( uid_21365 | 2020. 02. 06., cs – 18:33 )

Hehe, nem a programozás részétől félek ám, kedves barátom! Sőt, én kifejezetten a low-level programozási dolgokat élvezem!

Nekem a dolog elektronikai része az, ami nem menne. Soha életemben nem tanultam olyasmit, minden ami telik tőlem e téren az, hogy esetleg beszerelem a villanykapcsolókat a falba, aztán kész, ennyi!

Nem menne nekem a forrasztás se. Próbáltam. Jó, persze biztos igazad van, belejönnék még én is ebbe, de az vagy húsz év elszánt gyakorlást igényelne, annyi idővel később meg már talán nem is élek!

Ha már kész a hardware, de nem csak úgy hogy megvan a leírás HOGYAN készítsem el, hanem annyira készen hogy odanyomják a kezembe, na akkor igen, onnantól kezdve már tudok vele mit kezdeni. Addig nem. Addig a pontig én csak tisztelem azokat az embereket akik erre képesek, és picit irigykedem is rájuk. (de nem annyira, hogy széttrollkodjam a topikjaikat...)

Az a helyzet hogy van nekem egy barátom, villamosmérnök, és vele épp mostanában kezdtünk egy jókora projectbe: saját számítógépet akarunk készíteni, mondhatni saját „platformot”, természetesen FPGA alapokon. Külön billentyűzet nem lesz hozzá, mert minek, lesz hozzá USB port, aztán oda mindenki azt dug amit akar...

na és nálam már ott sötét a pálya hogy mi az az FPGA. Persze, tudom nagyjából... de semmi esetre se annyira hogy belekezdjek egy effélének az építésébe.

Szóval a dolog hardware-része a haverom reszortja. Megdumáltuk az alap elemi utaításkészletet, ugye a „gépi kódot”, ő meg csinál két példányt, az egyik naz enyém lesz... az én feladatom innen kezdődik! (Na jó, persze, volt némi beleszólásom a tervezési fázisban az architektúra milyenségébe is).

Tehát, amint lesz 2 példány belőle, elkezdjük a programkörnyzezet megalkotását... nem semmi feladat lesz. Én például magamra vállaltam a teljes lebegőpontops aritmetika megírását. Mert ilyen társprocesszor nincs a gépünkben... Illetve, úgy vállaltam magamra e melót, hogy nem lesz semmiféle lebegőpontos izémizé benne. Tanulmányoztam a kérdést, s úgy találtam, túl nagy szopás egy ilyesmit megírni, miközben a haszna megkérdőjelezhető, mert PONTATLAN. Inkább úgy döntöttem, egy BCD aritmetikát írok meg majd rá. Ez se „lebegőpontos” lesz, hanem fixpontos: lesz vagy százegynéhány egész számjegynek fenntartva hely, és ugyanennyi tizedesjegynek is. Ez már talán kellően pontos... Csak lefedi a legtöbb igényt...

Nyilván persze lesznek mindenféle függvények, amik ezeket „összetömörítik” kisebb helyre ha nem kell ekkora pontosság meg minden...

Elég sanszos, hogy így se szopok majd vele kevésbé mint a lebegőpontos számábrázolással, de legalább tényleg pontosabb lesz.

De ezen kívül is lesz elég feladat: ütemező írása, megszakításkezelés, a mindenféle portok támogatása, stb...

A projekt még nagyon az elején tart, több infót tehát ne várj. Csak arra akartam kilyukadni, az efféle „gépi kódú” szöszmötölés meg hogy „embedded system” programozás (ha szabad ezt annak neveznem) az oké, azzal nekem semmi bajom, de nem vagyok képes megtervezni magát a hardware-t, sőt összerakni se hiába van már meg a terv hozzá. Béna vagyok az ilyesmihez, sajna.