„Digitális technika 2 (régi)” változatai közötti eltérés

Palotasb (vitalap | szerkesztései)
Palotasb (vitalap | szerkesztései)
57. sor: 57. sor:
Az elmúlt két félévben a házi feladatok a következő részekből álltak:
Az elmúlt két félévben a házi feladatok a következő részekből álltak:


# Egy memóriamodult kell egy 8085-ös sínrendszerre illeszteni
 
## Fel kell rajzolni a modul blokkvázlatát
=== Az első rész tipikus leírása ===
## Fel kell rajzolni a modul címtérképét és címdekóderét (ebben van kb. három EPROM/RAM, és a címtérkép nem statikus, hanem szoftveresen átkapcsolható egy megadott I/O-címre történő írással
 
## Fel kell rajzolni a memóriaáramkörök bekötését
Egy több memóriaegységből álló memóriamodult kell egy 8085-ös sínrendszerre illeszteni
## Fel kell rajzolni az adatbuszmeghajtó-áramköröket
 
## Fel kell rajzolni az I/O-egységet, amely a különböző memóriák között kapcsol át
# Fel kell rajzolni a modul blokkvázlatát
## Fel kell rajzolni a ready-logikát
# Fel kell rajzolni a modul címtérképét és címdekóderét (ebben van kb. három ROM/RAM, és a címtérkép nem statikus, hanem szoftveresen átkapcsolható egy megadott I/O-címre történő írással
# Két assembly-függvényt kellett írni, mely a memória fizikai integritását ellenőrzi. Feladatkiadásonként változnak a konkrét regiszterpárok és a kitöltési szabályok.
# Fel kell rajzolni a memóriaáramkörök bekötését
## A '''FELTOLT''' szubrutin egy regiszterpárban egy memóriablokk kezdőcímét, egy másik regiszterpárban pedig a hosszát kapja meg. A meghatározott kezdőcímtől az adott hosszig a memóriát az adott bájt címéből képzett adattal kell feltöltenie. (Pl. ;a cím alsó és felső bájtjának kizáró vagy-kapcsolata” vagy „a cím alsó bájtjánál eggyel nagyobb érték”.) Nincs visszatérési értéke.
# Fel kell rajzolni az adatbuszmeghajtó-áramköröket
## Az '''ELLENOR''' szubrutin egy regiszterpárban kap egy memóriablokk kezdőcímét és egy másikban a hosszát. Feladata ellenőrizni, hogy az előbbi kitöltési szabálynak felel-e meg minden bájt a memóriablokkban. Visszatérési értékként meg kell adnia egy regiszterpárban a hibás bájtok számát, az első/utolsó hibás bájt címét (ha van ilyen, egyébként a memóriablokk megfelelő címét), és egy flaget is be kell állítani attól függően, hogy volt-e hibás bájt.
# Fel kell rajzolni az I/O-egységet, amely a különböző memóriák között kapcsol át
# Fel kell rajzolni a ready-logikát
 
=== A második rész tipikus leírása ===
 
Egy assembly-szubrutint kell írni, mely a memória fizikai integritását ellenőrzi. Paraméterként egy regiszterpárban megkapja az ellenőrizendő memóriablokk kezdőcímét és egy másik regiszterpárban a memóriablokk hosszát. Feladata, hogy egy ciklusban a memóriablokkot feltöltse valamilyen módon a memóriablokk címeiből képzett adatokkal (pl. a címek alsó bájtja plusz egy vagy a cím alsó és felső bájtjának vagy-kapcsolata), és egy másik ciklusban az adatokat visszaolvasva ellenőrizze, hogy minden rendben van-e. Ha hibát talál, azt egy flaget beállítva kell jeleznie, valamint egy regiszerpárban kell jeleznie a hibák számát és az első vagy az utolsó hiba helyét. A pontos feladatkiírás félévenként, a konkrét paraméterek (regiszterpárok, flagek) hallgatónként változhatnak.
 
=== Segédanyagok ===


Az IIT a [http://sirkan.iit.bme.hu/digit/own/BMEVIIIA106/hf_ut.pdf következőket javasolja] a házi feladat sikeres elkészítéséhez:
Az IIT a [http://sirkan.iit.bme.hu/digit/own/BMEVIIIA106/hf_ut.pdf következőket javasolja] a házi feladat sikeres elkészítéséhez: