„Digitális technika 1 - HT partíciók” változatai közötti eltérés

A VIK Wikiből
Nincs szerkesztési összefoglaló
44. sor: 44. sor:
=== Megoldás: ===
=== Megoldás: ===


# '''Feladat:'''
==== 1. Feladat: ====
#*A triviális HT partíciók: 2 ilyen van
*A triviális HT partíciók: 2 ilyen van
#**Minden állapot külön blokkban: azaz esetünkben <math> \prod_{1} (A)(B)(C)(D) </math>
**Minden állapot külön blokkban: azaz esetünkben <math> \prod_{1} (A)(B)(C)(D) </math>
#**Minden állapot egy blokkban: esetünkben <math> \prod_{2} (ABCD) </math><br />
**Minden állapot egy blokkban: esetünkben <math> \prod_{2} (ABCD) </math><br />
#*Keressünk 2 triviálistól eltérőt:
*Keressünk 2 triviálistól eltérőt:
#*#Vizsgáljuk meg például a következő partíciót: (AB)(CD)
*#Vizsgáljuk meg például a következő partíciót: (AB)(CD)
#*#*AB egy csoportba tartozásának feltétele: BC, AC, DC egy csoportba tartozása. Mivel ezek nem tartoznak azonos csoportba (hiszen a mostani 2 csoportunk AB és CD), így (AB)(CD) nem HT partíció.
*#*AB egy csoportba tartozásának feltétele: BC, AC, DC egy csoportba tartozása. Mivel ezek nem tartoznak azonos csoportba (hiszen a mostani 2 csoportunk AB és CD), így (AB)(CD) nem HT partíció.
#*#Vizsgáljuk meg ezután a következő partíciót: (AC)(BD)
*#Vizsgáljuk meg ezután a következő partíciót: (AC)(BD)
#*#*AC egy csoportba tartozásának feltétele BD egy csoportba tartozása, BD pedig egy csoportba tartozik. Tehát <math> \prod_{3} (AC)(BD) </math> HT partíció.
*#*AC egy csoportba tartozásának feltétele BD egy csoportba tartozása, BD pedig egy csoportba tartozik. Tehát <math> \prod_{3} (AC)(BD) </math> HT partíció.
#*#Az algoritmus tehát az, hogy minden lehetséges csoportosításra megvizsgáljuk, hogy az HT partíció-e. Most azonban csak 2-t kell keresnünk. Jelen esetben például jó lesz a következő csoportosítás: (BCD)(A)
*#Az algoritmus tehát az, hogy minden lehetséges csoportosításra megvizsgáljuk, hogy az HT partíció-e. Most azonban csak 2-t kell keresnünk. Jelen esetben például jó lesz a következő csoportosítás: (BCD)(A)
#*#*BCD egy csoportba tartozik, ha a benne lévő állapotok közül bármelyik 2 egy csoportba tartozik. Vegyük sorba:
*#*BCD egy csoportba tartozik, ha a benne lévő állapotok közül bármelyik 2 egy csoportba tartozik. Vegyük sorba:
#*#**BC egy csoportba tartozik -> OK
*#**BC egy csoportba tartozik -> OK
#*#**BD is egy csoportba tartozik -> OK
*#**BD is egy csoportba tartozik -> OK
#*#**CD egy csoportba tartozik, ha BC egy csoportba tartozik, ami igaz -> OK
*#**CD egy csoportba tartozik, ha BC egy csoportba tartozik, ami igaz -> OK
#*#*Láthatjuk, hogy BC, BD, CD mind a BCD csoportba vannak, tehát <math> \prod_{4} (BCD)(A) </math> is HT partíció.
*#*Láthatjuk, hogy BC, BD, CD mind a BCD csoportba vannak, tehát <math> \prod_{4} (BCD)(A) </math> is HT partíció.
2.
==== 2. Feladat: ====
Mivel 4 állapotunk van, ezért minimum 2 szekunder változóra van szükségünk(<math> 2^2 = 4 </math>).
*Mivel 4 állapotunk van, ezért minimum 2 szekunder változóra van szükségünk <math> (2^2 = 4) </math>.
Azt, hogy egy adott HT partíció szerinti kódoláshoz hány szekunder változóra van szükség, a következő összefüggés határozza meg: <math> p = \lceil\log_{2}B\rceil + \lceil\log_{2}A\rceil </math>, ahol <math>\lceil \rceil</math> jelölés az értéknek a legközelebbi egész számra történő felkerekítésére utal. *A* az egy blokkban előforduló állapotok legnagyobb száma, *B* pedig a blokkok száma
*Azt, hogy egy adott HT partíció szerinti kódoláshoz hány szekunder változóra van szükség, a következő összefüggés határozza meg: <math> p = \lceil\log_{2}B\rceil + \lceil\log_{2}A\rceil </math>, ahol <math>\lceil \rceil</math> jelölés az értéknek a legközelebbi egész számra történő felkerekítésére utal. '''A''' az egy blokkban előforduló állapotok legnagyobb száma, '''B''' pedig a blokkok száma
Nézzük meg p értékét a nem triviális partícióinkra:
*Nézzük meg p értékét a nem triviális partícióinkra:
  |*HT*||*B*||*A*||*p*
{|class="wikitable"
|}
! width="25%"|'''HT'''
  |<math>\prod_{3}</math>||2||2||2
! width="10%"|'''B'''
|}
! width="10%"|'''A'''
  |<math>\prod_{4}</math>||2||3||3
! width="10%"|'''p'''
|}
|-
  Tehát <math>\prod_{3}</math> minimális.
! '''<math>\prod_{3}</math>'''
kódolás:
| style="text-align:center"|2
| style="text-align:center"|2
| style="text-align:center"|2
|-
! '''<math>\prod_{4}</math>'''
| style="text-align:center"|2
| style="text-align:center"|3
| style="text-align:center"|3
|} Tehát <math>\prod_{3}</math> minimális.
*Kódolás:
  |* *||*y1*||*y2*
  |* *||*y1*||*y2*
|}
|}

A lap 2013. január 25., 16:50-kori változata

HT partíciók - egy példán keresztül

Feladatkitűzés:

Adott egy szinkron sorrendi hálózat állapottáblája

y \ X1X2 00 01 11 10
A C 1 C 1 A 1 D 1
B B 1 A 1 A 1 C 1
C C 0 A 0 A 0 B 0
D D 0 A 0 A 0 C 0

Kódolja az állapotokat önfüggő szekunder változócsoportok alapján.

  1. Adja meg a triviális HT partíciókat és legalább kettő, triviálistól eltérő HT partíciót.
  2. Kódolja a hálózatot a minimális számú szekunder változót igénylő triviálistól eltérő partícióval, és jelölje meg, hogy melyik változó lesz önfüggő!
  3. Töltse ki a kódolt állapottáblát

Megoldás:

1. Feladat:

  • A triviális HT partíciók: 2 ilyen van
    • Minden állapot külön blokkban: azaz esetünkben
    • Minden állapot egy blokkban: esetünkben
  • Keressünk 2 triviálistól eltérőt:
    1. Vizsgáljuk meg például a következő partíciót: (AB)(CD)
      • AB egy csoportba tartozásának feltétele: BC, AC, DC egy csoportba tartozása. Mivel ezek nem tartoznak azonos csoportba (hiszen a mostani 2 csoportunk AB és CD), így (AB)(CD) nem HT partíció.
    2. Vizsgáljuk meg ezután a következő partíciót: (AC)(BD)
      • AC egy csoportba tartozásának feltétele BD egy csoportba tartozása, BD pedig egy csoportba tartozik. Tehát HT partíció.
    3. Az algoritmus tehát az, hogy minden lehetséges csoportosításra megvizsgáljuk, hogy az HT partíció-e. Most azonban csak 2-t kell keresnünk. Jelen esetben például jó lesz a következő csoportosítás: (BCD)(A)
      • BCD egy csoportba tartozik, ha a benne lévő állapotok közül bármelyik 2 egy csoportba tartozik. Vegyük sorba:
        • BC egy csoportba tartozik -> OK
        • BD is egy csoportba tartozik -> OK
        • CD egy csoportba tartozik, ha BC egy csoportba tartozik, ami igaz -> OK
      • Láthatjuk, hogy BC, BD, CD mind a BCD csoportba vannak, tehát is HT partíció.

2. Feladat:

  • Mivel 4 állapotunk van, ezért minimum 2 szekunder változóra van szükségünk .
  • Azt, hogy egy adott HT partíció szerinti kódoláshoz hány szekunder változóra van szükség, a következő összefüggés határozza meg: , ahol jelölés az értéknek a legközelebbi egész számra történő felkerekítésére utal. A az egy blokkban előforduló állapotok legnagyobb száma, B pedig a blokkok száma
  • Nézzük meg p értékét a nem triviális partícióinkra:
HT B A p
2 2 2
2 3 3

Tehát minimális.

  • Kódolás:

|* *||*y1*||*y2* |} |*A*||0||0 |} |*C*||0||1 |} |*B*||1||0 |} |*D*||1||1 |} Így Y1 lesz önfüggő, azaz és . Ami jól látszik, ha felrajzoljuk Y1 és Y2 Karnaugh tábláját (ügyelve a peremezésre) és abból felírjuk a logikai függvényüket. Ezek után a kódolt állapottábla kitöltése gyerekjáték, csak be kell másolni az állapotok betűi helyére a nekik megfelelő kódokat. |*y1y2 \ X1X2 *|| 00 || 01 || 11 || 10 |} | 00 || 01 1 || 01 1 || 00 1 || 11 1 |} | 10 || 10 1 || 00 1 || 00 1 || 01 1 |} | 01 || 01 0 || 00 0 || 00 0 || 10 0 |} | 11 || 11 0 || 00 0 || 00 0 || 01 0 |}