[abc80] ABC80 med SD micro

hpa at zytor.com hpa at zytor.com
Fre Dec 27 00:54:54 PST 2019


On December 22, 2019 1:25:08 AM PST, Anders Jansson <m8894 at abc.se> wrote:
>Ja, det ska bli kul att höra mer om detta! Skriv till listan för oss
>som inte kollar Facebook.
>Jag monterade fel 3.3V regulator så jag fick bara 2 kort klara innan
>jul. Men det ena har problem med wifi och det andra bootar inte ABC80
>rätt, så jag får inte iväg några kort innan jul. Det är typiskt, det
>brukar aldrig krångla annars. Men gott nytt år ändå!
>
>
>Den 2019-12- 19:56:38 skrev H. Peter Anvin <hpa at zytor.com>:
>
>> On 2019-12-11 23:00, juhasz wrote:
>>> jag tar inte illa upp iaf! ;) allt som går att ansluta till abc80 är
>bra
>>> tycker jag! o fpgakortet verkar intressant! dessutom kanske inte
>ubw32
>>> kommer tillverkas i en evighet...
>>>
>>> Robert
>>
>> Skönt att höra! En stor motivering för detta är att på ABC800 är
>> signalen XM# viktig för att kunna skapa plats i minneskartan för
>> drivrutiner, eftersom 800:ans minneskarta är mer än full från första
>> början. XM# kan ha så lite som bara en halv klockcykel (167 ns) på
>sig,
>> vilket måste också inkludera alla fördröjningar i signalvägarna. Än
>> värre är att man inte får en konkret signal att denna tidsperiod
>börjat,
>> vilket betyder att man måste kunna evaluera den åtminstone varje
>> halvcykel. Om man ska göra det i en MCU (jag tittade väldigt mycket
>>> ESP32) måste man i praktiken reservera en CPU-kärna för att polla
>> kontinuerligt. En FPGA är naturligtvis helt parallel så det är inga
>problem.
>>
>> Med den något modifierade kontakt som jag använt finns *alla*
>> ABC-bussens signaler tillgängliga oavsett vad det är för maskin,
>t.o.m.
>> ABC1600 :)
>>
>> En kul grej med en FPGA är att de också går att använda som
>> logikanalysatorer och timingen går att kontrollera med mycket hög
>> precision, så nu kan jag säga med rätt hög säkerhet att ABC80 behöver
>>> svar inom 345±15 ns efter XMEMFL# för att en minnesaccess ska
>fungera.
>> Det är mer än jag trodde: visar sig att Z80 alltid ger minst 1.5
>cykler
>> från MREQ#/RD# innan den samplar, och ABC80 get XMEMFL# asynkront när
>> MREQ# och RD# är båda låga, så det ger en halvcykel (167 ns) mer än
>jag
>> trodde.
>>
>> Nackdelen med just det kortet är att det inte har några som helst
>> I/O-enheter på själva kortet; det är byggt specifikt för att montera
>>> ett dotterkort. Jag håller som bäst på att fundera hur man ska göra
>det;
>> det enklaste är naturligtvis att bygga ett eget dotterkort; det är ju
>> billigt numera, men kräver jobb att bygga. Ett mindre antal färdiga
>> moduler (i praktiken max 2, i bästa fall 4) skulle gå att koppla
>direkt
>> in på FPGA-kortet, annars behövs någon form av dotterkort.
>>
>> Vad gäller en CPU tittar jag f.n. på ett par olika varianter av små
>> RiscV32 softcores, troligen runt 66-83 MHz men möjligen upp till
>120-133
>> MHz; det senare har problemet att jag inte klurat ut än hur man kan
>> garantera att ABC-bussen har garanterad access till *allt* minne inom
>> ~330 ns oavsett var som händer i resten av systemet.
>>
>> Jag vill att hela grejen ska (med lämpliga kontakter och montering)
>> kunna installeras internt i ABC800 eller ett expansionschassi. Jag
>har
>> redan kollat, och det finns tillräckligt vertikalt utrymme även om
>det
>> sitter ovanpå ett dotterkort, i alla fall om det är permanent
>monterat
>> (en kontakt emellan skulle kunna bli för mycket, men om man har en
>> kontakt kan man använda 90°-kontakter och montera dem linjärt.
>>
>> Så vitt jag kan se, några alternativ är:
>>
>> 1. Specialdesignat dotterkort med moduler (kan göras utan ytmonterade
>> komponenter, kanske t.o.m. på stripboard i alla fall till prototyp);
>>
>> 2. Specialdesignat dotterkort med I/O-enheter/kontakter fast
>monterade;
>> en del, b.la. SD-kort-kontakter finns endast som ytmonterade.
>>
>> 3. Moduler direkt inkopplade till FPGA-kortet; lätt att bygga men
>> begränsat p.g.a. VCC/GND-pinnar som behöver vara på rätt ställe --
>men
>> det kan man förstås fixa med kontaktmodifikationer om man inte har
>något
>> emot lite "fullödning."
>>
>> 4. Någon form av billigt MCU-kort som har de I/O-kontakter vi vill
>ha. I
>> sådant fall blir FPGA-kortet möjligen bara bussinterface och minne.
>>
>> Det här kortet ser intressant ut för den varianten, och verkar ha en
>> pinout som man troligen kan få att funka:
>>
>> https://www.aliexpress.com/item/4000396361074.html
>>
>> 5. Om man har riktig tur och hittar ett "shield"-kort som har de I/O
>man
>> vill, och som dessutom passar till pinout... tror man skulle behöva
>rätt
>> mycket tur!
>>
>> Vad tror ni?
>>
>> 	-hpa
>
>_______________________________________________
>ABC80 mailing list
>ABC80 at abc80.org
>https://lists.abc80.org/abc80

Tråkigt!

Just nu lutar jag åt att få wifi och SD från ett ESP32-CAM-kort, och en separat RTC-modul. De båda råkar ha en pinout som passar rakt in på FPGA-kortet, vilket gör det nästan pinsamt enkelt...
-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.



More information about the ABC80 mailing list