You are on page 1of 108

I HC QUC GIA H NI

TRNG I HC CNG NGH


KHOA CNG NGH THNG TIN

HNG DN THC HNH

KIN TRC MY TNH


BNG M PHNG
TC GI
PGS. TS. Nguyn nh Vit (ch bin)
ThS. Lng Vit Nguyn
KS. Nguyn Hoi Nam
KS. Nguyn c Thin

H NI - 2010

LI NI U

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

MC LC

GII THIU ................................................................................................ 8


BI 1 Hc s dng Logisim theo tr gip Help .................................. 9
1.1. Cc yu cu v ni dung chnh.................................................................................... 9
1.2. Ci t b m phng Logisim ..................................................................................... 9
1.3. Cc bc to mt mch logic s n gin .................................................................. 9
1.4. Bi tp (theo gio trnh Kin trc my tnh)................................................................ 9

BI 2 Hc s dng Logisim theo tr gip Help (tip) ...................... 11


2.1. Cc yu cu v ni dung chnh.................................................................................. 11
2.2. S dng th vin ca Logisim v thay i thuc tnh ca cc phn t logic............ 11
2.3. To v s dng cc mch con.................................................................................... 11
2.4. Tra cu theo cc menu............................................................................................... 11
2.5. Bi tp (theo gio trnh Kin trc my tnh).............................................................. 11

BI 3 Hc s dng Logisim theo tr gip Help (tip) ...................... 13


3.1. Cc yu cu v ni dung chnh.................................................................................. 13
3.2. To v s dng cc b dy ........................................................................................ 13
3.3. Phn tch cc mch t hp (Combinational circuits)................................................. 13
3.4. Bi tp (theo gio trnh Kin trc my tnh).............................................................. 13

BI 4 Hc s dng Logisim theo tr gip Help (tip) ...................... 15


4.1. Cc yu cu v ni dung chnh.................................................................................. 15
4.2. Cc thnh phn ca b nh........................................................................................ 15
4.3. Bi tp (theo gio trnh Kin trc my tnh).............................................................. 15

BI 5: Xy dng ALU-16bits .................................................................. 17


5.1. Cc yu cu v ni dung chnh.................................................................................. 17
5.2. Phn tch bi tan ...................................................................................................... 17
5.3. Xy dng ALU 1 bit.................................................................................................. 18
5.4. Xy dng ALU 8 bit.................................................................................................. 19
5.5. Xy dng ALU 16 bit hon chnh ............................................................................. 20
5.6. Bi tp (khng c trong gio trnh Kin trc my tnh) ............................................ 21
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

BI 6: Xy dng khi 16 thanh ghi........................................................ 22


6.1. Cc yu cu v ni dung chnh.................................................................................. 22
6.2. Phn tch bi tan ...................................................................................................... 22
6.3. Xy dng v m phng khi 16-Register.................................................................. 25
6.3.1 Xy dng khi 16-Register..............................................................................................25
6.3.2 M phng hot ng ca khi 16-Register......................................................................26

6.4. Bi tp (khng c trong gio trnh Kin trc my tnh) ............................................ 27

BI 7: Xy dng cc thnh phn cn li ca ng d liu.............. 28


7.1. Cc yu cu v ni dung chnh.................................................................................. 28
7.2. Xy dng v m phng s hot ng ca shifter...................................................... 29
7.2.1 Phn tch ..........................................................................................................................29
7.2.2 Xy dng mch con shifter ..............................................................................................29
7.2.3 M phng hot ng ca shifter ......................................................................................31

7.3. Xy dng v m phng s hot ng ca cc thanh ghi cht A Latch v B Latch .. 31


7.3.1 Phn tch ..........................................................................................................................31
7.3.2 Xy dng thanh ghi cht..................................................................................................31
7.3.3 M phng hot ng ca thanh ghi cht (Latch Register) ..............................................32

7.4. Xy dng v m phng s hot ng ca AMUX .................................................... 32


7.5 Xy dng v m phng s hot ng ca MAR ........................................................ 32
7.5.1 Phn tch ..........................................................................................................................32
7.5.2 Xy dng thanh ghi MAR ...............................................................................................33
7.5.3 M phng hot ng ca MAR .......................................................................................33

7.6 Xy dng v m phng s hot ng ca MBR ........................................................ 34


7.6.1 Phn tch ..........................................................................................................................34
7.6.2 Xy dng thanh ghi MBR................................................................................................34
7.6.3 M phng hot ng ca MBR........................................................................................35

7.7. Bi tp........................................................................................................................ 36

BI 8: Xy dng Control Store, MIR v Micro Seq ca n v iu


khin......................................................................................................... 37
8.1. Cc yu cu v ni dung chnh.................................................................................. 37
8.2. Xy dng v m phng s hot ng ca Control Store .......................................... 38
8.2.1 Phn tch ..........................................................................................................................38
8.2.2. Xy dng v np ni dung cho Control Store.................................................................38
8.2.3. M phng s hot ng ca Control Store .....................................................................44

8.2. Xy dng v m phng s hot ng ca MIR......................................................... 44


8.2.1 Phn tch ..........................................................................................................................44
8.2.2 Xy dng thanh ghi MIR .................................................................................................44
8.2.3 M phng hot ng ca thanh ghi MIR.........................................................................45
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

8.3. Xy dng v m phng s hot ng ca Micro Seq ............................................... 45


8.3.1 Phn tch ..........................................................................................................................45
8.3.2 Xy dng mch con Micro Seq .......................................................................................45
8.3.3 M phng hot ng ca Micro Seq................................................................................46

BI 9: Xy dng cc thnh phn cn li ca b iu khin ............... 47


9.1. Cc yu cu v ni dung chnh.................................................................................. 47
9.2. Xy dng v m phng hot ng ca thanh ghi MPC ............................................ 47
9.2.1 Phn tch ..........................................................................................................................47
9.2.2 Xy dng thanh ghi MPC ................................................................................................47
9.2.3 M phng hot ng ca thanh ghi MPC ........................................................................48

9.3. Xy dng v m phng hot ng ca n v Increment ......................................... 48


9.3.1 Phn tch ..........................................................................................................................48
9.3.2 Xy dng mch con Increment ........................................................................................48
9.3.3 M phng hot ng ca Increment ................................................................................49

9.4. Xy dng v m phng hot ng ca n v Mmux ............................................... 49


9.5. Xy dng v m phng hot ng ca decoder ........................................................ 49
9.5.1 Phn tch ..........................................................................................................................49
9.5.2 Xy dng mch con lm A, B decoder v m phng s hot ng ca n.....................49
9.5.3 Xy dng mch con lm C decoder v m phng s hot ng ca n..........................50

9.6. Xy dng v m phng hot ng ca Clock ........................................................... 51


9.6.1 Phn tch ..........................................................................................................................51
9.6.2 Xy dng mch con lm n v Clock ............................................................................52
9.6.3 M phng s hot ng ca Clock ..................................................................................53

BI 10: Xy dng vi kin trc y .................................................... 54


10.1. Cc yu cu v ni dung chnh................................................................................ 54
10.2. Lp ghp vi kin trc y ................................................................................... 54
10.3. B sung b nh chnh v lp ghp vi vi kin trc................................................. 55
10.4. Kim tra h thng my tnh ..................................................................................... 56

PH LC A: HNG DN S DNG LOGISIM ................................... 57


1. CH DN CHO NGI MI S DNG .................................................................. 58
1.1 Bc 0: T nh hng chnh bn thn bn .......................................................................59
1.2 Bc 1: Thm cc cng ......................................................................................................60
1.3 Bc 2: Thm dy ni ........................................................................................................62
1.4 Bc 3: Chn text ...............................................................................................................63
1.5 Bc 4: Kim tra mch.......................................................................................................64

2. TH VIN V CC THUC TNH.......................................................................... 65


2.1 Explorer pane......................................................................................................................66
2.2 Bng thuc tnh...................................................................................................................67
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

2.3 Thuc tnh ca cng c .......................................................................................................68

3. CC MCH CON........................................................................................................ 70
3.1 To mi cc mch ...............................................................................................................70
3.2 S dng mch con...............................................................................................................71
3.3 Sa li cc mch con ..........................................................................................................73
3.4 Th vin Logisim................................................................................................................74

4. DY.............................................................................................................................. 75
4.1 To cc b...........................................................................................................................75
4.2 Dng c r nhnh................................................................................................................76
4. 3 Mu ca dy.......................................................................................................................77

5. PHN TCH TNG HP............................................................................................ 79


5.1 Cch m bng phn tch tng hp ......................................................................................79
5.2 Sa i bng chn l............................................................................................................80
5.3 To cc biu thc ................................................................................................................82
5.4 To mch.............................................................................................................................84

6. GII THIU CC MENU........................................................................................... 84


6.1 Menu File............................................................................................................................84
6.2 Menu Edit ...........................................................................................................................85
6.3 Menu Project.......................................................................................................................86
6.4 Menu Simulate....................................................................................................................87
6.5 Menu Window ....................................................................................................................88
6.6 Menu Help ..........................................................................................................................88

7. CC THNH PHN CA B NH ......................................................................... 88


7.1 Truy cp b nh ..................................................................................................................89
7.2 Pop-up menus and files.......................................................................................................89
7.3 Hex editor ...........................................................................................................................90

8. LOGGING .................................................................................................................... 91
8.1 Th la chn (the selection tab)..........................................................................................92
8.2 Th table .............................................................................................................................93
8.3 Th tp ................................................................................................................................94

9. APPLICATION PREFERENCES................................................................................ 95
9.1 Th Template ......................................................................................................................96
9.2 Th International.................................................................................................................96
9.3 Th Experimental................................................................................................................98
9.4 Ty chn Command-line ....................................................................................................99

10. PROJECT OPTION.................................................................................................. 100


10.1 Th Canvas .....................................................................................................................101
10.2 Th Simulation................................................................................................................103
10.3 Th Toolbar.....................................................................................................................104
10.4 Th Mouse ......................................................................................................................105

11. S TRUYN GI TR ............................................................................................ 106


11.1 S tr ca cng ...............................................................................................................106
11.2 Li dao ng ...................................................................................................................107
11.3 Hn ch ...........................................................................................................................108
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

PH LC B: P N MT S BI TP .............................................. 110
Bi s 5 ........................................................................................................................... 110

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

GII THIU

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

BI 1 Hc s dng Logisim theo tr gip Help


1.1. Cc yu cu v ni dung chnh
Bit cch ci t v cho chy chng trnh m phng
Bit cch s dng tr gip (Help) ca logisim
Bit cc bc to mt mch logic s n gin
Bit cch lu gi (save) cc mch in to ra vo file v m (open)

1.2. Ci t b m phng Logisim


C th download cc bn logisim cho Windows, Linux, MacOS ti a ch sau:
http://sourceforge.net/projects/circuit/
Bn cho Windows ch gm c 1 file:

logisim-win-2.3.5.exe (3.5 MB).

Bn cho MacOS l file:

logisim-macosx-2.3.5.tar.gz.

Bn cho Linux (v nhiu OS khc) l:

logisim-2.3.5.jar.

Chy logisim trong mi trng Windows: Nu my tnh ci t java, th c th


chy logisim ngay, nh chy cc file chng trnh kh thi bnh thng khc. Nu cha,
th phi ci java ri mi chy c logisim.
Chy logisim trong mi trng linux (ubuntu): Cn phi ci t java trc mi c th
chy c logisim. Chng ti ci sun-java6-jre trong Ubuntu 10.04 v Ubuntu Remix
v khng gp tr ngi no. C th dng Synaptic Package Manger tm v ci bn java
ny.
Chy logisim nh sau: java jar logisim-2.3.5.jar [Enter]

1.3. Cc bc to mt mch logic s n gin


Thc hin cc bc theo Help ca logisim (Help \ Tutorial \ Beginners Tutorial).
Trong Bi thc hnh s 1, sinh vin cn c v lm theo 5 bc (step 0 step 4) ca
mc Beginners Tutorial.

1.4. Bi tp (theo gio trnh Kin trc my tnh)


Ch khi lm cc bi tp ca chng ny:
u ra ca 1 cng c th ni vi u vo ca 1 cng khc. i vi cc u vo/ra
khng ni vi cc u vo/ra ca cc cng khc, mi u vo cn ni vi mt phn t
input v mi u ra cn ni vi phn t output.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

th li chc nng, s dng cng c poke tool tr vo cc phn t input v


kch nt chut bn tri o gi tr ca input, ng thi quan st gi tr ca phn t
output.
Sau khi to v th cc mch logic, cn save vo b nh ngoi ( a cng, a
USB...), sau th open xem li. Tn file lu mch in theo cc hnh v trong
gio trnh nn t theo tn hnh v cho d nh. Th d, vi mch in trn hnh 3-02,
tn file nn t l hinh3-02.circ, hoc figure3-02.circ.
Bi tp:
1. M phng s hat ng ca cc cng logic n gin nht trn hnh 3-02.

Hnh 3-02 K hiu v hnh trng chc nng ca 5 cng c bn


2. To v m phng hat ng ca cc mch logic s nh trn Hnh 3-03, kim tra s
tng ng ca chng.

Hnh 3-03 Cc mch logic c chc nng tng ng


3. To v m phng hat ng ca cc mch logic s nh trn Hnh 3-06.

Hnh 3-06 Bng chn l ca hm XOR v cc mch in thc hin hm ny

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

10

BI 2 Hc s dng Logisim theo tr gip Help (tip)


2.1. Cc yu cu v ni dung chnh
Bit s dng th vin ca logisim
Bit b sung cc mch con (subcircuit) m mnh to ra vo th vin
To v m phng mt s mch in c trong gio trnh Kin trc my tnh.

2.2. S dng th vin ca Logisim v thay i thuc tnh ca cc


phn t logic
Thc hnh trn my theo Help ca logisim, xem mc Libraries and Attributes.

2.3. To v s dng cc mch con


Thc hnh trn my theo Help ca logisim, xem mc Subcircuits.

2.4. Tra cu theo cc menu


Thc hnh trn my theo Help ca logisim, xem mc Menu Reference.

2.5. Bi tp (theo gio trnh Kin trc my tnh)


Ch :
Cc mch logic s sau y c trong th vin ca logisim, nhng sinh vin vn cn
to ra chng bng cc phn t logic c bn hiu su v s hot ng ca chng.
Sinh vin nn ly t th vin mt phn t c chc nng tng t chc nng ca mch
logic s m mnh va to ra so snh chc nng ca chng.
Sau ny, khi xy dng Micro Architecture (hnh 4-07, hnh 4-09), chng ta s s
dng cc phn t c trong th vin.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

11

Bi tp:
1. To v m phng hat ng ca multiplexer v demultiplexer trn Hnh 3-07.

Hnh 3-07 B dn knh v b phn knh


2. To v m phng hat ng ca b decoder 3 to 8 trn Hnh 3-08.

Hnh 3-08 Mch gii m 3 to 8


3. To v m phng hat ng ca b so snh 4 bit trn Hnh 3-09.

Hnh 3-09 B so snh 4 bit

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

12

BI 3 Hc s dng Logisim theo tr gip Help (tip)


3.1. Cc yu cu v ni dung chnh
Bit to v s dng cc b dy (wire bundles)
Bit phn tch, to v m phng cc mch t hp (combinational circuit)
To v m phng c cc mch t c trong gio trnh Kin trc my tnh.

3.2. To v s dng cc b dy
Thc hnh trn my theo Help ca logisim, xem mc Wire bundles.

3.3. Phn tch cc mch t hp (Combinational circuits)


Thc hnh trn my theo Help ca logisim, xem mc Combinational analysis.

3.4. Bi tp (theo gio trnh Kin trc my tnh)


Ch :
Mt s mch logic s sau y c trong th vin ca logisim, nhng sinh vin vn
cn to ra chng bng cc phn t logic c bn hiu su v s hot ng ca
chng.
Sinh vin nn ly t th vin mt phn t c chc nng tng t chc nng ca mch
logic s m mnh va to ra so snh chc nng ca chng.
Sau ny, khi xy dng Micro Architecture (hnh 4-07, hnh 4-09), chng ta s s
dng cc phn t c trong th vin.
Bi tp:
1. To v m phng hat ng ca b dch (shifter) trn Hnh 3-11. Thc tp s dng
cc phn t Shifter v Shift Register c trong th vin ca logisim (trong cc
nhm Arithmetic v Memory).

Hnh 3-11 B dch 1 bit sang tri/phi

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

13

2. To v m phng hat ng ca cc b cng (Haft-Adder v Full-Adder) trn Hnh


3-12. Thc tp s dng phn t Adder c trong th vin ca logisim (trong nhm
Arithmetic).

Hnh 3-12 B cng


3. To v m phng hat ng ca b s hc l logic trn Hnh 3-13 (1-bit ALU). Lu
(save) vo file ALU-1bit.circ s dng cho bi tp sau.

Hnh 3-13 B S hc v Logic (ALU) 1 bit


4. To v m phng hat ng ca mt ALU 8 bit t cc mch con l ALU 1 bit nh
trn hnh 3-14 (s dng file ALU-1bit.circ).

Hnh 3-14 ALU 8-bit c to bi 8 mnh ALU 1-bit

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

14

BI 4 Hc s dng Logisim theo tr gip Help (tip)


4.1. Cc yu cu v ni dung chnh
Bit c kh nng m phng b nh ca logisim.
Bit to v m phng s hot ng ca cc phn t nh c bn.
Bit s dng cc phn t nh c trong th vin ca logisim.

4.2. Cc thnh phn ca b nh


Thc hnh trn my theo Help ca logisim, xem mc Memory.
Trong gi thc hnh c gio vin hng dn, nn tp trung thc hnh s dng cc thnh
phn b nh sau:
D Flip-Flop
S-R Flip-Flop
Register

4.3. Bi tp (theo gio trnh Kin trc my tnh)


Ch :
Mt s mch logic s sau y c trong th vin ca logisim, nhng sinh vin vn
cn to ra chng bng cc phn t logic c bn hiu su v s hot ng ca
chng.
Sinh vin nn ly t th vin mt phn t c chc nng tng t chc nng ca mch
logic s m mnh va to ra so snh chc nng ca chng.
Sau ny, khi xy dng Micro Architecture (hnh 4-07, hnh 4-09), chng ta s s
dng cc phn t c trong th vin.
Bi tp:
1. To v m phng s hot ng ca
Thanh ghi cht n gin nht thanh ghi cht RS, theo Hnh 3-16;
sau lp li vic ny nhng s
dng cc phn t NAND thay cho
cc phn t NOR.
Hnh 3-16 a/ Thanh ghi cht dng cng NOR trng thi 0; b/ Thanh ghi cht dng
cng NOR trng thi 1
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

15

2. To v m phng s hot ng ca Thanh ghi cht RS hot ng theo nhp xung


ng h theo Hnh 3-17. Ch th tn hiu ng h (clock) theo 2 cch: 1/ s dng
phn t input v dng phn t poke tool thay i gi tr ca input; 2/ s
dng n v to tn hiu clock thuc nhm Base trong th vin ca logisim.

Hnh 3-17 Thanh ghi cht RS hot ng theo nhp xung ng h


3. To v m phng s hot ng ca Thanh ghi cht D hot ng theo nhp xung ng
h (Hnh 3-18).

Hnh 3-18 Thanh ghi cht D hot ng theo nhp xung ng h


4. To v m phng s hot ng ca Phn t nh 1 bit ca b nh RAM tnh (SRAM)
nh trn Hnh 3-19.

Hnh 3-19 Mch in ca mt phn t nh RAM tnh 1 bit Sij


Ch :
-

S dng phn t Controlled Buffer thuc nhm Gates trong th vin lm b


m 3 trng thi c u ra ni vi Dout.

S dng phn t Buffer thuc nhm Gates trong th vin lm b m c u


vo ni vi Din.

5. T c cc mc Logging; Application Referenes v Projection trong Help ca


logisim.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

16

BI 5: Xy dng ALU-16bits
5.1. Cc yu cu v ni dung chnh
Xy dng v m phng s hot ng ca n v ALU ca vi kin trc c m t trn
hnh 4-09. ALU ny c m t k ti mc 4.1.4 n v S hc-Logic v B dch v
c minh ho trn hnh 4-04.

Hnh 4-04 a/ K hiu mt ALU; b/ K hiu mt Shifter


ALU ny thc hin mt trong 4 php tnh trn tan hng 16 bit, theo m php tan cha
trong trng ALU (gm 2 bit F0 v F1) ca thanh ghi MIR cha vi ch th ang thi hnh:
ALU (= F0 F1) = 00: Cng 2 tan hng 16 bits 2 u vo, s nh a vo (carry-in)
bng 0, s nh a ra c s dng to thnh cc tn hiu trng thi N v Z.
ALU (= F0 F1) = 01: AND 2 tan hng 16 bits 2 u vo.
ALU (= F0 F1) = 10: Cho tan hng u vo bn tri (u vo A) i ra u ra,
khng thay i; cc bt trng thi N v Z c thit lp ph thuc vo kt qu u
ra.
ALU (= F0 F1) = 11: o tan hng u vo bn tri (u vo A) v a ra u ra.

5.2. Phn tch bi tan


ALU ny thc hin cc chc nng khng hon ton ging vi ALU hc v c
m t trn hnh 3-13. Tuy nhin, s khc nhau l khng nhiu. Chng ta ch phi to
ra mt mch in thc s mi sinh ra tn hiu trng thi N v Z, theo nguyn tc
sau:
N - ch bo rng kt qu ra ca ALU l m (Negative). Thc cht, bit N ch l
copy ca bit c bc cao nht ca kt qu a ra.
Z - ch bo rng kt qu ra ca ALU bng khng (Zero). Thc cht, bit Z l NOR
ca tt c cc bit ca kt qu a ra.
Khi xy dng ALU-16bits:
Carry-in cho b cng 2 bit bc 0 c cho bng 0.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

17

Carry-out ca b cng 2 bit bc cao nht (15) khng cn quan tm ( mch in


v vic phn tch n khng qu phc tp).
vic xy dng mch in theo kiu m-un ha, chng ta s xy dng mch
ALU 1 bit trc, lu vo file ALU-1bit.circ; sau s dng n xy dng ALU8bits; cui cng xy dng ALU-16bits theo yu cu t 2 ALU 8 bit v mt s phn t
mch in khc, th d mch to cc tn hiu trng thi N v Z.
Ch : Chng ta c th xy dng 1 ALU-16bits t 16 ALU-1bit, thm ch t cc phn t
logic c bn. Tuy nhin, nu lm nh vy s khng th nhn thy ton b mch in trn
mn hnh.

5.3. Xy dng ALU 1 bit


Chy logisim; Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh,
hi tn m ta mun t cho mch in. Hy t tn l ALU-1bit, khng cn nh vo
tn m rng lun c t mc nh l .circ. Trong ca s con gc trn bn tri,
ngoi tn main, logisim hin tn mch con (subcircuit) m chng ta va to ra, l
ALU-1bit.
Lu (save) mch in m chng ta to ra: vo menu File \ Save | Save As. Khi
logisim hi tn m chng ta mun t, hy t tn l: Micro-Architecture-SVxx.circ.
Trong , SVxx l m s sinh vin v .circ l tn m rng (mc nh). Trong thi
gian thc hnh, hoc khi kt thc thc hnh, nn thng xuyn save.
Xy dng ALU 1 bit nh hnh di y.
Ch :
1. Mch con ny s c chng ta s dng xy dng ALU-8bits.
2. Cc phn t input/output ca mch con nm hng no (North, South, East,
West) ca mch in ny, th khi chng ta s dng mch con ny nh mt phn
t ca th vin, cc u (chn) input/ouput ca phn t s c cng hng
(North, South, East, West).
Kim tra s thc hin 4 chc nng ca ALU bng cch dng phn t poke tool
thit lp cc gi tr khc nhau ca cc u vo: F0, F1, A, B v Carry-in; ng thi
quan st gi tr trn cc u ra: Output v Carry-Out.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

18

5.4. Xy dng ALU 8 bit


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l ALU-8bits. Trong ca s con gc trn bn
tri, ngoi tn main v ALU-1bit, logisim hin tn mch con (subcircuit) m chng ta
va to ra, l ALU-8bits.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con ALU-8bits s c lu cng vi MicroArchitecture-SVxx.circ.
Xy dng ALU-8bits nh hnh di y. Ch :
Hy s dng cc phn t ALU-1bit do chng ta to ra. Vic ny khng khc g so
vi vic s dng cc phn t c sn trong th vin ca logisim.
Cc phn t input c ghi nhn A (left input), B right input v phn t output
c ghi nhn Output l 8 bits.
Mi phn t input/output 8 bits ni trn ni vi 1 u ca 1 b dy (gm 8 dy
n), u kia ca b dy ni vi u 8 bits ca phn t Splitter thuc nhm
Base c trong th vin ca logisim. Phn t Splitter ny c 8 u ra mi u
ra l 1 dy in truyn 1 bit. (Chng ta c th thay i s u ra, tc l gp mt
s dy vo 1 b dy hnh v khi qu ri mt).
Kim tra s thc hin 4 chc nng ca ALU bng cch dng phn t poke tool
thit lp cc gi tr khc nhau ca cc u vo: F0, F1, A, B v Carry-in; ng thi
quan st gi tr trn cc u ra: Output v Carry-Out.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

19

5.5. Xy dng ALU 16 bit hon chnh


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l ALU-16bits. Trong ca s con gc trn bn
tri, ngoi tn main, ALU-1bit, ALU-8bits, logisim hin tn mch con (subcircuit)
m chng ta va to ra, l ALU-16bits.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con ALU-16bits s c lu cng vi MicroArchitecture-SVxx.circ.
Xy dng ALU-16bits nh hnh di y. Ch :
Hy s dng cc phn t ALU-8bits do chng ta to ra.
Cc phn t input c ghi nhn To A-bus, To B-bus v phn t output c ghi
nhn ALU output l 16 bits.
u vo Carry_in ca ALU-8bits bn phi c ni vi phn t Constant thuc
nhm Gates trong th vin ca logisim. Chng ta cn t thuc tnh cho phn
t ny bng 0.
Kim tra s thc hin 4 chc nng ca ALU bng cch dng phn t poke tool
thit lp cc gi tr khc nhau ca cc u vo: F0, F1, A, B v Carry-in; ng thi
quan st gi tr trn cc u ra: Output v Carry-Out.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

20

5.6. Bi tp (khng c trong gio trnh Kin trc my tnh)


Hy s dng cc cc phn t Hex Digit Display v Splitter c c di dng
s Hexa cc gi tr a vo ALU v kt qu nhn c u ra ALU.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

21

BI 6: Xy dng khi 16 thanh ghi


6.1. Cc yu cu v ni dung chnh
Xy dng v m phng s hot ng ca khi cc thanh ghi 16 Registers ca vi
kin trc c m t trn hnh 4-09 (trong gio trnh Kin trc my tnh, hoc c
th xem trong Bi 8 Xy dng Control Store, MIR v Micro Seq ca n v iu
khin). Khi ny gm 16 thanh ghi, mi thanh ghi c kch thc16 bits, th t cc
thanh ghi t 0..15 l: PC, AC, SP, IR, TIR, 0, +1, -1, AMASK, SMASK, A, B, C, D,
E, F.
Mi mt trong 16 thanh ghi ni trn c th c iu khin nhn d liu t Bus-C
bng tn hiu t trng ENC trong thanh ghi MIR, vic nhn d liu t Bus-C ch c
th xy ra trong chu k con th 4 ca tn hiu ng h. Vic chn 1 trong 16 thanh
ghi thc hin bng C decoder, cn u vo 4 bit ca C decoder ni vi trng C
ca thanh ghi MIR.
Mi mt trong 16 thanh ghi ni trn c th c iu khin ni dung ca n ra
Bus-A, hoc Bus-B, hoc ng thi ra c Bus-A v Bus-B. Vic chn 1 trong 16
thanh ghi d liu ra bus A c thc hin bng A decoder. Vic chn 1 trong
16 thanh ghi d liu ra bus B c thc hin bng B decoder.

6.2. Phn tch bi tan


Cch to khi cc thanh ghi ny ny c m t ti mc 4.1.1 Thanh ghi v mc
4.1.2 Bus v c minh ho trn hnh 4-02. Ch rng hnh 4-02a ny m t cc to 1
thanh ghi kch thc 8 bits t 8 thanh ghi 1 bit; hnh 4-02b m t cc bus v cc tn hiu
ni vi thanh ghi 16 bits.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

22

Hnh 4-02 a/ Thanh ghi 8 bit ni vi mt bus vo (input bus) v mt bus ra (output bus).
b/ K hiu ca mt thanh ghi 16 bit vi mt bus vo v hai bus ra
Trong bi thc hnh ny chng ta s s dng phn t register thuc nhm Memory
trong th vin ca logisim. Mt s thuc tnh ca phn t ny c th thay i c thng
qua ca s Attribute Table gc di bn tri ca s chnh ca logisim. ngha ca
cc thuc tnh nh sau:
Data bits: t 1 n 32, chng ta chn bng 16.
Trigger: tn hiu ng h kch hot phn t nh (nhn input hoc a ni dung ra
output) (u vo c ghi hnh u mi tn), c th chn 1 trong 4 tn hiu:
Rising Edge: phn t nh b kch hot bng sn ln (dng) ca xung kch.
Falling Edge: phn t nh b kch hot bng sn xung (m) ca xung kch.
High Level: phn t nh b kch hot bng mc cao ca xung kch.
Low Level: phn t nh b kch hot bng mc thp ca xung kch.
Chng ta chn Rising Edge, v chng ta mun cc thanh ghi c kch hot ngay
sn ln (u) ca xung ng h.
Label:
nhn m chng ta mun t cho phn t nh. Chng ta c th t nhn
khc nhau cho cc thanh ghi khc nhau, th d: thanh ghi c u en ni vi u ra 0
ca decoder nn gn nhn l PC, tng t: 1: AC, 2: SP, ...
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

23

Label Font:
font ch v c ch ca nhn; Chng ta cn chn sao cho p, ch
khng ln cc nt ca hnh v.
Cc u vo/ra ca phn t nh:
D (Data bits):

u vo d liu (1..32 bits).

Q (u ra d liu): c rng (s bit) bng u vo D.


^: u vo (1 bit) ca tn hiu ng h.
en (Enable): tn hiu m chip cha phn t nh, tng t tn hiu CS (Chip Select)
hoc CE (Chip Enable) m chng ta gp khi phn tch mt s mch in trong
Chng 3 Mc logic s.
0: u vo tn hiu xa (t gi tr 0) ni dung phn t nh.

Sau khi bit c cc thuc tnh v cc u vo/ra ca phn t nh Register, chng ta


s thc hin xy dng khi 16 thanh ghi theo cch nh sau (Vic phn tch cn i chiu
vi mt s hnh v trong gio trnh Kin trc my tnh):
u vo D (16 dy) ca c 16 thanh ghi ni chung li vi nhau (cc ng truyn bit
0 ni vi nhau, cc ng truyn bit 1 ni vi nhau,...) v s ni vi Bus-C thng qua
phn t input 16 bit (Xem Hnh 4-02 v Hnh 4-07).
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

24

u ra Q (16 dy) ca mi mt trong s 16 phn t Register c ni vi 2 u


vo ca 2 b m 3 trng thi (phn t Controlled buffer thuc nhm Gates),
c th c iu khin d liu ra hoc Bus-A, hoc Bus-B hoc ng thi ra c
2 Bus-A v Bus-B. 16 u ra ca 16 b m 3 trng thi th nht ni vi nhau v
ni vi mt phn t output d liu ra Bus-A; 16 u ra ca 16 b m 3 trng
thi th hai ni vi nhau v ni vi mt phn t output d liu ra Bus-B.
Phn t Controlled buffer c u ra ni vi Bus-A c iu khin bi tn hiu t
mt trong cc u ra ca A-decoder. Tng t nh vy, phn t Controlled buffer
c u ra ni vi Bus-B c iu khin bi tn hiu t mt trong cc u ra ca Bdecoder (Xem Hnh 4-02 v Hnh 4-07). Cc phn t Controlled buffer ni trn u
l 16 bits (chng ta t thuc tnh Data Bits ca chng bng 16).
u vo tn hiu ng h ^ ca tt c 16 thanh ghi c ni vi nhau (Xem Hnh 402).
Mi u vo en (Enable) ca mt trong 16 phn t register ni vi mt u ra ca
C-decoder. Nh vy C-decoder s chn ly 1 trong 16 thanh ghi nhn d liu t
Bus-C vo.
u vo tn hiu xa 0: trong cc bi thc hnh ny, chng ta cha s dng n
nn h (khng ni i u c), tc l khng xa.

6.3. Xy dng v m phng khi 16-Register


6.3.1 Xy dng khi 16-Register
Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l 16registers-block. Trong ca s con gc
trn bn tri, ngoi tn main, ALU-1bit, ALU-8bits, ALU-16bits logisim hin tn
mch con (subcircuit) m chng ta va to ra, l 16registers-block.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con 16register-block s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, chng ta to mt tp 16 thanh ghi
nh hnh v di y.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

25

6.3.2 M phng hot ng ca khi 16-Register


Chng ta c th m phng xem n v 16-Registers m chng ta va to ra c thc
hin ng cc chc nng nh thit k khng.
Chn 1 trong 16 thanh ghi nhn d liu vo t Bus-C:
1. t gi tr cho phn t input clock bng 1 (s dng poke tool).
2. t gi tr cho phn t input Input from C-bus bng mt gi tr nh phn no ,
chng hn bng 1111.0000.1100.1100.
3. t gi tr cho phn t input From C-decoder bng 0000.0000.0000.0001
chn thanh ghi PC, cho n nhn d liu t phn t input Input from C-bus. Nu
thay i gi tr ny (ch : lun ch c 1 bit bng 1, cn cc bit khc bng 0) th mt
trong 15 thanh ghi khc c chn.
Ch : Vi mch in v cc gi tr c thit lp nh trn, chng ta thng khng c
c gi tr nh phn cha vo thanh ghi c chn. c th nhn thy, chng ta thc
hin thm 2 bc nh sau:
4. t gi tr cho phn t input From B-decoder gi tr nh phn ging gi tr t cho
phn t input From C-decoder.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

26

5. Dng phn t poke took o gi tr ca phn t input clock 2 ln; chng ta s


nhn thy gi tr m thanh ghi c chn nhn t Bus-C, nay truyn ra phn t
output To B-bus.

6.4. Bi tp (khng c trong gio trnh Kin trc my tnh)


Hy s dng cc cc phn t Hex Digit Display v Splitter c c di dng
s Hexa cc gi tr a vo cc phn t ouput To A-Bus v To B-Bus.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

27

BI 7: Xy dng cc thnh phn cn li ca ng d liu


7.1. Cc yu cu v ni dung chnh
ng d liu (Data Path) c
trnh by trong Chng 4 Mc
Vi chng trnh v c minh
ha trn hnh v bn (Hnh 407).
Trong 2 bi thc hnh trc,
chng ta xy dng v m
phng s lm vic ca 2 thnh
phn l ALU-16bits v khi 16
thanh ghi.
Trong bi thc hnh ny, chng
ta s xy dng v m phng s
hot ng ca cc thnh phn
cn li ca ng d liu, l:
Shifter
A Latch, B Latch
AMUX
MAR
MBR

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

28

7.2. Xy dng v m phng s hot ng ca shifter


7.2.1 Phn tch
Thanh ghi dch (Shifter) m chng ta cn xy dng thc hin 1 trong 3 thao tc (php
tnh) theo tn hiu iu khin 2 bit c k hiu l S1S0.
S1S0

Thao tc

00

No Shift (khng dch bit)

01

Shift Left (dch tri 1 v tr bit)

10

Shift Right (dch phi 1 v tr bit)

11

Khng s dng gi tr ny

Khi dch tri/phi, gi tr 0 c a vo v tr bit 0/15. Bit 15/0 b bt ra khi dch


tri/phi nhng (trong mn hc ny) chng ta khng cn quan tm.
u vo (16 bits) ca shifter ni vi u ra ca ALU-16bits.
u ra (16 bits) ca shifter ni vi u vo ca MBR v C-Bus. iu ny c ngha l
kt qu c th a ra b nh chnh (Main memory) thng qua MBR, hoc a vo 1
trong 16 thanh ghi qua C-Bus n tham gia vo php tnh khc.

7.2.2 Xy dng mch con shifter


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Shifter-16bits. Trong ca s con gc trn
bn tri, ngoi tn main, ALU-1bit, ALU-8bits, ALU-16bits, 16registers-block
logisim hin tn mch con (subcircuit) m chng ta va to ra, l Shifter-16bits.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con Shifter-16bits s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, chng ta xy dng Shifter-16bits
nh hnh v di y.
Ngoi cc phn t input v output bit, chng ta s dng cc phn t shifter trong
nhm Arithmetic v phn t MUX (Multiplexer) trong nhm Plexers ca th vin
trong logisim.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

29

Phn t shifter:
o S thuc tnh: 2, chng ta cn thit lp gi tr ca chng cho ph hp vi yu cu
ca mnh:
Data Bits: 16 (c th nhn cc gi tr trong min 1..32)
Shift Type:
Logical Left (cc gi tr khc c th nhn l: Logical Right,
Arithmetic Right, Roll Left, Roll Right)
o S chn: 3 (2 chn cho tn hiu vo, 1 chn cho tn hiu ra):
1 chn vo cho data (16 bits): pha trn bn tri.
1 chn ra cho data (16 bits): bn phi, c nh du mi tn, hng mi tn
ty theo chng ta chn thuc tnh Shift Type l left hay right.
1 chn vo iu khin s v tr bit s dch, trn hnh c ghi nhn bits to
shift. Nu chng ta thit lp Data Bits =16 (2^4) th u vo ny nht
thit phi l 4 bit. Nu chng ta ch mun dch 1 bit, th thit lp gi tr cho
phn t input ni vi u vo ny bng 0001.
Phn t MUX (Multiplexer):
o S thuc tnh: 3, chng ta cn thit lp gi tr ca n cho ph hp vi yu cu ca
mnh:
Facing: East - hng u ra v pha ng (cc gi tr khc: West, North,
South)
Select Bits:

2 (v chng ta cn chn 1 trong 3 kt qu a ra)

Data Bits: 16
o S chn: 6 (5 chn cho tn hiu vo, 1 chn cho tn hiu ra):
Chn vo s 0 (c k hiu 0): 16 bits cho gi tr no shift.
Chn vo s 1 (bn di chn 0): 16 bits cho gi tr shift left.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

30

Chn vo s 2: 16 bits cho gi tr shift right.


Chn vo s 3: khng s dng n.
Chn vo cho 2 bits iu khin: trn cnh bn ca hnh thang cn (k hiu
ca Multiplexer).
Chn ra: 16 bits, nm cnh y nh ca hnh thang cn, c gi tr bng 1
trong 3 u vo, c chn bng 2 bits iu khin.

7.2.3 M phng hot ng ca shifter


Chng ta c th m phng xem n v shifter m chng ta va to ra c thc hin
ng cc chc nng nh thit k khng. C th thc hin nh sau:
1. t gi tr cho phn t Input bng mt gi tr nh phn no , chng hn bng
1111.0000.1100.1100.
2. S dng phn t poke tool thit lp gi tr cho 2 bits iu khin (SH Controller)
ln lt bng 00, 01 v 10. Nu chng ta xy dng ng, ti u ra Output chng ta
s thy cc gi tr a ra ln lt l: 1111.0000.1100.1100, 1110.0001.1001.1000
v 0111.1000.0110.0110. chnh l kt qu no shift, shift left v shift right
i vi d liu a vo.

7.3. Xy dng v m phng s hot ng ca cc thanh ghi cht A


Latch v B Latch
7.3.1 Phn tch
Thanh ghi cht m chng ta s xy dng lm A Latch v B Latch c chc nng rt
n gin. N c u vo v u ra 16 bits, u vo iu khin 1 bit (L0 iu khin A
Latch, L1 iu khin B Latch). Khi tn hiu trn u vo iu khin bng 1, gi tr 16 bits
u s c nh v a ra u ra. Khi tn hiu iu khin t 1 tr v 0, gi tr trong
thanh ghi (v u ra) khng thay i c na, d gi tr u vo c thay i.

7.3.2 Xy dng thanh ghi cht


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Latch-16bits. Trong ca s con gc trn
bn tri, ngoi tn main, ALU-1bit, ALU-8bits, ALU-16bits, 16registers-block,
Shifter-16bits logisim hin tn mch con (subcircuit) m chng ta va to ra, l
Latch-16bits.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con Latch-16bits s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, chng ta xy dng Latch-16bits
nh hnh v di y. Tt c cc phn t cn s dng chng ta u bit.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

31

7.3.3 M phng hot ng ca thanh ghi cht (Latch Register)


Chng ta c th m phng xem n v latch m chng ta va to ra c thc hin ng
cc chc nng nh thit k khng. C th thc hin nh sau:
1. Ban u, bit Clock bng 0 v t gi tr cho phn t Input bng mt gi tr nh
phn no , chng hn bng 1111.0000.1100.1100.
2. Thit lp gi tr cho bit Clock bng 1, chng ta s thy u ra Output s c gi tr
ng bng Input l: 1111.0000.1100.1100.
3. o bit Clock bng 0.
4. Thay i gi tr ca Input, chng ta s thy Output khng b thay i.

7.4. Xy dng v m phng s hot ng ca AMUX


AMUX l mt b dn knh 2-to-1, chng ta s s dng phn t Multiplexer trong nhm
Plexers c trong th vin ca logisim. Ngoi phn t ny, chng ta khng cn thm mt
phn t chc nng no khc to nn AMUX.

7.5 Xy dng v m phng s hot ng ca MAR


7.5.1 Phn tch
Chc nng ca thanh ghi cht a ch b nh MAR c m t ti mc 4.1.6 B nh
chnh ca gio trnh Kin trc my tnh. Trn hnh v minh ha ng d liu u
Bi s 7 ny, tn hiu iu khin M0 tch cc (=1) lm cho MAR cht d liu u
vo ni vi u ra B Latch ca n, khi M0 o gi tr (t 1 v 0), ni dung MAR
khng thay i theo tn hiu vo v lun c truyn ra u ra (chnh l Address Bus,
thuc bus h thng ca my tnh). iu ng lu khi khi thc hnh m phng l,
u ra v u vo ca MAR u truyn gi tr 12 bits ch khng phi 16 bits. 12 bits
a vo u vo ca MAR ly t 12 bits thp trong s 16 bits truyn t u ra ca B
Latch. Vic tch 12 bits ny chng ta s thc hin bng phn t splitter thuc nhm
Base c trong th vin ca logisim, khi chng ta lp ghp ton b vi kin trc.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

32

Ngoi tn hiu iu khin M0 ni trn phi c mc tch cc, chng ta bit rng,
MAR ch c cht d liu trong chu k con th 3 ca n v ng h (vn ny
c phn tch trong mc 4.2.3 Vic nh thi vi ch th, gio trnh Kin trc my
tnh). Tm li, c 2 tn hiu iu khin MAR cht d liu, mt l tn hiu ly t bit
MAR trong thanh ghi MIR (chnh l M0 trong hnh v u bi thc hnh ny); hai
l tn hiu ly t ng chu k con th 3 ca n v ng h.

7.5.2 Xy dng thanh ghi MAR


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l MAR-16bits. Trong ca s con gc trn
bn tri, ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim
hin tn mch con (subcircuit) m chng ta va to ra, l MAR-16bits.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con MAR-16bits s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, chng ta xy dng MAR-16bits
nh hnh v di y. Tt c cc phn t cn s dng chng ta u bit.

7.5.3 M phng hot ng ca MAR


Chng ta c th m phng xem thanh ghi cht MAR va to ra c thc hin ng cc
chc nng nh thit k khng. Vic thc hin tng t nh i vi thanh ghi cht
trnh by ti mc 7.3.3 M phng hot ng ca thanh ghi cht, ch c mt s khc
nhau nh, l c 2 tn hiu iu khin MAR. Cc bc thc hin nh sau:
1. Ban u, bit Clock v Mo bng 0, chng ta t gi tr cho phn t Input bng
mt gi tr nh phn no , chng hn bng 1111.0000.1100.1100.
2. Thit lp gi tr cho bit Clock v Mo ng thi bng 1, chng ta s thy u ra
Output s c gi tr ng bng Input l: 1111.0000.1100.1100. Hy th ch cho
mt trong 2 tn hiu Clock v Mo bng 1, gi tr cn li bng 0, chng ta s thy
thanh ghi khng th nhn gi tr Input.
3. o bit Clock bng 0.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

33

4. Thay i gi tr ca Input, chng ta s thy Output khng b thay i.

7.6 Xy dng v m phng s hot ng ca MBR


7.6.1 Phn tch
Chc nng ca thanh ghi m d liu b nh MBR c m t ti mc 4.1.6 B nh
chnh v mc 4.2.1 ng d liu (Data path)ca gio trnh kin trc my tnh.
Trn hnh v minh ha ng d liu u Bi thc hnh s 7 ny, chng ta thy c
3 tn hiu iu khin MBR:
M1: iu khin vic np ca MBR t u ra ca Shifter (M1 =1: np). Trong
Hnh 4-09 S y ca mt vi kin trc, M1 c ni vi bit MBR ca
MIR.
M2: iu khin vic c b nh, M2 c ni vi bit RD ca MIR. Khi c, d
liu t b nh c cha vo MBR v truyn ra mt trong 2 u vo ca AMUX.
D liu t u vo ny c th c iu khin i ra u ra v np vo u vo
bn tri ca ALU.
M3: iu khin vic ghi b nh, M3 c ni vi bit WR ca MIR. Khi ghi, d
liu ang cha trong MBR c a ra bus d liu ni vi Main memory ca
MBR (bus bn tri MBR).
Ngoi 3 tn hiu iu khin ni trn, chng ta bit rng, MBR ch c cht d
liu vo hoc a d liu ra trong chu k con th 4 ca n v ng h (vn ny
c phn tch trong mc 4.2.3 Vic nh thi vi ch th, gio trnh Kin trc my
tnh).

7.6.2 Xy dng thanh ghi MBR


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l MBR-16bits. Trong ca s con gc trn
bn tri, ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim
hin tn mch con (subcircuit) m chng ta va to ra, l MBR-16bits.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con MBR-16bits s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, chng ta xy dng MBR-16bits
nh hnh v di y. Tt c cc phn t cn s dng chng ta u bit.
Ch :
Bus d liu ni MBR vi Main memory l bus 2 chiu; tuy nhin v logisim khng c
phn t no va c th l input va c th l output, cho nn chng ta nh phi to ra 2
bus mt chiu thay th.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

34

7.6.3 M phng hot ng ca MBR


Chng ta c th m phng xem thanh ghi MBR m chng ta va to ra c thc hin
ng cc chc nng nh thit k khng. Vic thc hin c nhiu bc tng t nh
i vi thanh ghi cht (latch) v thanh ghi MAR.
M phng vic cha d liu t Bus-C vo MBR theo cc bc nh sau:
1. Ban u, cn thit lp gi tr cho:
MBR, RD, WR v Clock: 0 (c th chn t menu:
Simulation).

simulate\Reset

Input (Connect to C-bus): mt gi tr nh phn no , chng hn bng


1111.0000.1100.1100.
2. Thit lp gi tr cho bit MBR bng 1; sau o gi tr bit Clock t 0 thnh 1, chng
ta s thy u ra Output s c gi tr ng bng Input l: 1111.0000.1100.1100.
M phng vic cha d liu t b nh vo MBR (c b nh) theo cc bc nh sau:
1. Ban u, trnh nhm ln, nn reset li m phng (menu:
Simulation).

simulate

Reset

2. Thit lp gi tr cho phn t input From Main Memory: mt gi tr nh phn no ,


chng hn bng 1111.0000.1100.1100.
3. Thit lp gi tr cho bit MBR bng 1; sau o gi tr bit Clock t 0 thnh 1, chng
ta s thy u ra Output s c gi tr ng bng Input l: 1111.0000.1100.1100.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

35

M phng vic a d liu t MBR ra b nh (ghi b nh):


Sau vic m phng trn (cha d liu t b nh vo MBR), phn t Output ang cha
gi tr 1111.0000.1100.1100, cn phn t output To Main Memory cha tng c
gn gi tr nn c logisim coi l cha gi tr khng xc nh v hin th ni dung phn
t ny bng 16 k t x.
Chng ta thc hin m phng vic ghi b nh theo nh sau:
Thit lp gi tr cho bit MBR bng 0 v bit WR bng 1, chng ta s thy u ra To Main
Memory s c gi tr ng bng Output l: 1111.0000.1100.1100.

7.7. Bi tp
Vi mch con MBR-16bits nh chng ta xy dng, vic ghi b nh ch i hi bit
iu khin WR bng 1, ch khng cn Clock (subcycle 4) bng 1. Hy sa li mch
con sao cho d liu t MBR ch a ra c bus d liu ni vi Main Memory khi bit
iu khin Clock (subcycle 4) bng 1.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

36

BI 8: Xy dng Control Store, MIR v Micro Seq ca n


v iu khin
8.1. Cc yu cu v ni dung chnh
n v iu khin CU (Ctrol Unit) c gii thiu khi qut trong mc 2.1 Kin trc
chung ca my tnh in t; Ti chng 2, chng ta bit rng CU thc hin vic iu
khin s hot ng ca tt c cc n v to nn h thng my tnh theo chng trnh
trong b nh chnh.
CU c nghin cu su hn trong chng 4, ti cc mc 4.2.2 Vi ch th microinstruction, 4.2.3 Vic nh thi vi ch th, 4.2.4 S nh trnh t cc vi ch
th,...Trong s khi y ca mt vi kin trc di y, chng ta thy CU bao gm
cc n v sau: Control Store, MIR, Micro Seq, MPC, Increment, Mmux, A Decoder, B
decoder, C decoder v n v to tn hiu ng h - Clock.

Hnh 4-09 S khi y ca mt vi kin trc


Trong Bi thc hnh s 8, chng ta s xy dng v m phng s hot ng ca 3 trong
s 9 n v cu thnh CU, l: Control Store, MIR v Micro Seq.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

37

Control Store: phi cha c ton b vi chng trnh thc hin thng dch cc lnh
ly v t b nh chnh (Main memory).
u vo: C 1 u vo a ch 8 bits ni vi u ra ca MPC. a ch ny dng
chn 1 trong s 2^8 vi ch th cha trong Control Store.
u ra: C 1 u ra 32 bits ni vi u vo ca MIR.
MIR: nhn ch th a ra t Control Store v duy tr ni dung trong thi gian thi hnh.
Micro Seq: sinh ra tn hiu Mmux quyt nh chn vi ch th tip theo, cn c vo cc
tn hiu trng thi N, Z v tn hiu iu khin COND.

8.2. Xy dng v m phng s hot ng ca Control Store


8.2.1 Phn tch
V nguyn tc, Control Store c th l ROM hoc RAM. Trong bi thc hnh ny,
chng ta s s dng phn t ROM c trong th vic ca logisim lm Control Store.
L do: Trong bi thc hnh s 10, chng ta s to ra v m phng hot ng ca b
nh chnh (Main memory), ch c th s dng phn t RAM. Nh vy chng ta s
dng c 2 loi phn t nh trong thc hnh.
Kch thc: Trong mc 4.4 Th d v mt vi chng trnh, chng ta phn tch
k lng mt vi chng trnh gm 79 vi ch th, mi vi ch th di 32 bit. Nh vy
kch thc ca Control Store ti thiu l 79x32 bit. Tuy nhin, c th m rng
c, yu cu sinh vin thit k Control Store c kch thc 256x32 bits.
T kch thc 256x32 dn n vic mt s trong cc thuc tnh ca phn t ROM
lm Control Store bt buc phi c gi tr nh sau:
Address Bit Width: 8 ( c th chn 1 trong 256)
Data Bit Width: 32 (kch thc 1 vi ch th)
Ni dung (Contents): Chnh l vi chng trnh c trnh by ti mc 4.4.2 Th
d v mt vi chng trnh, sinh vin cn np vo phn t ROM, sau khi chuyn
t dng MAL sang dng nh phn.

8.2.2. Xy dng v np ni dung cho Control Store


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Control-Store-256x32bits. Trong ca s con
gc trn bn tri, ngoi tn main v tn cc mch con m chng ta to ra t
trc, logisim hin tn mch con (subcircuit) m chng ta va to ra, l ControlStore-256x32bits.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con Control-Store-256x32bits s c lu cng vi
Micro-Architecture-SVxx.circ.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

38

Trong ca s con Canvas Window ca logisim, vic xy dng Control-Store256x32bits ht sc n gin:


Ly mt phn t
ROM
trong
nhm Memory
t vo Canvas
Window.
Thit lp gi tr
cho cc thuc
tnh ca n nh
phn tch
trn (Address Bit
Width: 8; Data
Bit Width: 32).

np ni dung cho phn t nh Control-Store, hy kch nt chut bn phi, logisim


hin ln mt danh sch cc la chn. Hy chn Edit Contents..., logisim s hin ln
mt ca s Logisim: Hex Editor ngi s dng np ni dung cho phn t nh
Control-Store.

Vic np ni dung cho Control-Store tuy n gin, nhng mt nhiu thi gian v i
hi tuyt i chnh xc. Hnh v trn l ni dung Control-Store c np 79 (4FH
= 4*16 + 15) words di dng s hexa, mi word 32 bits l mt vi ch th ca vi
chng trnh lm nhim v thng dch.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

39

Vi chng trnh c np vo Control Store


A
Statement

a ch

(Ch th ngn ng MAL)

M O

M M R W E

B A D R N

D
C

R R

Ch th (Hexa)

0 (00h)

mar := pc; rd

00

00

00

0 0000 0000 0000 0000.0000

00.C0.00.00

1 (01h)

pc := pc+1; rd;

00

00

00

1 0000 0110 0000 0000.0000

00.50.60.00

2 (02h)

ir := mbr; if n then goto 28;

01

10

00

1 0011 0000 0000 0001.1100

B0.13.00.1C

3 (03h)

tir :=lshift(ir+ir); if n then goto


19;

01

00

10

1 0100 0011 0011 0001.0011

4 (04h)

tir := lshift(tir); if n then goto


11;

01

10

10

1 0100 0000 0100 0000.1011

5 (05h)

alu := tir; if n then goto 9;

01

10

00

0 0000 0000 0100 0000.1001

30.00.04.09

6 (06h)

mar := ir; rd;

00

00

00

0 0000 0011 0000 0000.0000

00.C0.30.00

7 (07h)

rd;

00

00

00

0 0000 0000 0000 0000.0000

00.40.00.00

8 (08h)

ac := mbr; goto 0

11

10

00

1 0001 0000 0000 0000.0000

F1.11.00.00

9 (09h)

mar := ir; mbr := ac; wr;

00

10

00

0 0000 0011 0001 0000.0000

11.A0.31.00

10 (0Ah) wr; goto 0;

11

00

00

0 0000 0000 0000 0000.0000

60.20.00.00

11 (0Bh) alu := tir; if n then goto 15;

01

10

00

0 0000 0000 0100 0000.1111

30.00.04.0F

12 (0Ch) mar := ir; rd;

00

00

00

0 0000 0011 0000 0000.0000

00.C0.30.00

13 (0Dh) rd;

00

00

00

0 0000 0000 0000 0000.0000

00.40.00.00

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

24.14.33.13
34.14.04.0B

40

11

00

00

1 0001 0001 0000 0000.0000

01

10

10

1 0100 0000 0100 0001.1001

25 (19h) alu := tir; if n then goto 27;

01

10

00

0 0000 0000 0100 0001.1011

30.00.04.1B

26 (1Ah) pc := band(ir, amask); goto 0;

11

01

00

1 0000 1000 0011 0000.0000

68.10.83.00

14 (0Eh) ac := mbr + ac; goto 0;


19 (13h)

a ch
(Hexa)

tir := lshift(tir); if n then goto


25;

Statement
(Ch th ngn ng MAL)

E1.11.10.00
34.14.04.19

M O

M M R W E

B A D R N

R R

D
C

Ch th (Hexa)

(Cc vi ch th di y thy Vit cha kim tra li bng vic cho thc hin)
a ch
(Hexa)
0E
0F
10
11
12
13
14
15
16
17
18
1B

Ch th MAL
ac := mbr + ac; goto 0;
mar := ir; rd;
ac := ac + 1; rd;
a := inv(mbr);
ac := ac + a; goto 0;
tir := lshift(tir); if n then goto 25;
alu := tir; if n then goto 23;
alu := ac; if n then goto 0;
pc := band(ir, amask); goto 0;
alu := ac; if z then goto 22;
goto 0;
ac := band(ir, amask); goto 0;

Ch th (nh phn)
1110.0000.0001.0001.0001.0000.0000.0000
0001.0000.1100.0000.0011.0000.0000.0000
0000.0000.0101.0001.0110.0001.0000.0000
1001.1000.0001.1010.0000.0000.0000.0000
0110.0000.0001.0001.0101.0001.0000.0000
0011.0100.0001.0100.0000.0100.0001.1001
0011.0000.0000.0000.0000.0100.0001.0111
0011.0000.0000.0000.0000.0001.0000.0000
0110.1000.0001.0000.1000.0011.0000.0000
0101.0000.0000.0000.0000.0001.0001.1000
0110.0000.0000.0000.0000.0000.0000.0000
0110.1000.0001.0001.1000.0011.0000.0000

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

Ch th (Hexa)
e0.11.10.00
10.c0.30.00
00.51.61.00
98.1a.00.00
60.11.51.00
34.14.04.19
30.00.04.17
30.00.01.00
68.10.83.00
50.00.01.18
60.00.00.00
68.11.83.00
41

1C
1D
1E
1F
20
21
22
23
24
25
26
27
28
29
2A
2B
2C
2D
2E
2F
30
31
32
33
34
35
36
37
38

tir := lshift(ir+ir); if n then goto 40;


tir := lshift(tir); if n then goto 35;
alu := tir; if n then goto 33;
a := ir + sp;
mar := a; rd; goto 7;
a := ir + sp;
mar := a; mbr := ac; wr; goto 10;
alu := tir; if n then goto 38;
a := ir + sp;
mar := a; rd; goto 13;
a := ir + sp;
mar := a; rd; goto 16;
tir := lshift(tir); if n then goto 46;
alu := tir; if n then goto 44;
alu := ac; if n then goto 22;
goto 0;
alu := ac; if z then goto 0;
pc := band(ir, amask); goto 0;
tir := lshift(tir); if n then goto 50;
sp := sp + (-1);
mar := sp; mbr := pc; wr;
pc := band(ir, amask); wr; goto 0;
tir := lshift(tir); if n then goto 65;
tir := lshift(tir); if n then goto 59;
alu := tir; if n then goto 56;
mar := ac; rd;
sp := sp + (-1); rd;
mar := sp; wr; goto 10;
mar := sp; sp := sp + 1; rd;

0010.0100.0001.0100.0011.0011.0010.1000
0011.0100.0001.0100.0000.0100.0010.0011
0011.0000.0000.0000.0000.0100.0010.0001
0000.0000.0001.1010.0010.0011.0000.0000
0111.0000.1100.0000.1010.0000.0000.0111
0000.0000.0001.1010.0010.0011.0000.0000
0111.0001.1010.0000.1010.0001.0000.1010
0011.0000.0000.0000.0000.0100.0010.0110
0000.0000.0001.1010.0010.0011.0000.0000
0111.0000.1100.0000.1010.0000.0000.1101
0000.0000.0001.1010.0010.0011.0000.0000
0111.0000.1100.0000.1010.0000.0001.0000
0011,0100.0001.0100.0000.0100.0010.1110
0011.0000.0000.0000.0000.0100.0010.1100
0011.0000.0000.0000.0000.0001.0001.0110
0110.0000.0000.0000.0000.0000.0000.0000
0101.0000.0000.0000.0000.0001.0000.0000
0110.1000.0001.0000.1000.0011.0000.0000
0011.0100.0001.0100.0000.0100.0011.0010
0000.0000.0001.0010.0111.0010.0000.0000
0001.0001.1010.0000.0010.0000.0000.0000
0110.1000.0011.0000.1000.0011.0000.0000
0011.0100.0001.0100.0000.0100.0100.0001
0011.0100.0001.0100.0000.0100.0011.1011
0011.0000.0000.0000.0000.0100.0011.1000
0001.0000.1100.0000.0001.0000.0000.0000
0000.0000.0101.0010.0111.0010.0000.0000
0110.0000.1010.0000.0010.0000.0000.1010
0000.0000.1101.0010.0010.0110.0000.0000

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

24.14.33.28
34.14.04.23
30.00.04.21
00.1a.23.00
70.c0.a0.07
00.1a.23.00
71.a0.a1.0a
30.00.04.26
00.1a.23.00
70.c0.a0.0d
00.1a.23.00
70.c0.a0.10
34.14.04.2e
30.00.04.2c
30.00.01.16
60.00.00.00
50.00.01.00
68.10.83.00
34.14.04.32
00.12.72.00
11.a0.20.00
68.30.83.00
34.14.04.41
34.14.04.3b
30.00.04.38
10.c0.10.00
00.52.72.00
60.a0.20.0a
00.d2.26.00
42

39
3A
3B
3C
3D
3E
3F
40
41
42
43
44
45
46
47
48
49
4A
4B
4C
4D
4F

rd;
mar := ac; wr; goto 10;
alu := tir; if n then goto 62;
sp := sp + (-1);
mar := sp; mbr := ac; wr; goto 10;
mar := sp; sp := sp + 1; rd;
rd;
ac := mbr; goto 0;
tir := lshift(tir); if n then goto 73;
alu := tir; if n then goto 70;
mar := sp; sp := sp + 1; rd;
rd;
pc := mbr; goto 0;
a := ac;
ac := sp;
sp := a; goto 0;
alu := tir; if n then goto 76;
a := band(ir, smask);
sp := sp + a; goto 0;
a := band(ir, smask);
a := inv(a);
a := a + 1; goto 75;

0000.0000.0100.0000.0000.0000.0000.0000
0111.0000.1010.0000.0001.0000.0000.1010
0011.0000.0000.0000.0000.0100.0011.1110
0000.0000.0001.0010.0111.0010.0000.0000
0111.0001.1010.0000.0010.0001.0000.1010
0000.0000.1101.0010.0010.0110.0000.0000
0000.0000.0100.0000.0000.0000.0000.0000
1111.0000.0001.0001.0000.0000.0000.0000
0011.0100.0001.0100.0000.0100.0100.0110
0011.0000.0000.0000.0000.0100.0100.0110
0000.0000.1101.0010.0010.0110.0000.0000
0000.0000.0100.0000.0000.0000.0000.0000
1111.0000.0001.0000.0000.0000.0000.0000
0001.0000.0001.1010.0000.1010.0000.0000
0001.0000.0001.0001.0000.0010.0000.0000
0111.0000.0001.0010.0000.1010.0000.0000
0011.0000.0000.0000.0000.0100.0100.1100
0000.1000.0001.1010.1001.0011.0000.0000
0110.0000.0001.0010.1010.0010.0000.0000
0000.1000.0001.1010.1001.0011.0000.0000
0001.1000.0001.1010.0000.1010.0000.0000
0110.0000.0001.1010.0110.1010.0100.1011

00.04.00.00
70.a0.10.0a
30.00.04.3e
00.12.72.00
71.a0.21.0a
00.02.26.00
00.40.00.00
f0.11.00.00
34.14.04.46
30.00.04.46
00.d2.26.00
00.40.00.00
f0.10.00.00
10.1a.0a.00
10.11.02.00
70.12.0a.00
30.00.04.4c
08.1a.93.00
60.12.a2.00
08.1a.93.00
18.1a.0a.00
60.1a.6a.4b

(Ch : du . c vit thm vo gia cc nhm 4 bit nh phn v cc nhm 2 s hexa cho d c; khng np chng vo
Control-Store)

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

43

8.2.3. M phng s hot ng ca Control Store


Vi cch xy dng Control Store ch gm 1 phn t ROM ly trong th vin ca logisim,
chng ta ch c th m phng s hot ng ca n khi lp ghp y cc thnh phn
ca vi kin trc. Vic thc hnh m phng Control Store s c thc hin trong Bi
thc hnh s 10.

8.2. Xy dng v m phng s hot ng ca MIR


8.2.1 Phn tch
Kch thc: 32 bits (cha c 1 vi ch th).
u vo: C 1 u vo 32 bits ni vi u ra ca Control Store.
u ra: 32 bit c nhm thnh 13 nhm tn hiu, mi nhm tn hiu hoc iu
khin mt n v thnh phn nh trc no ca ng d liu (th d: ALU,
SH,...), hoc a vo mt n v thnh phn nh trc no thuc CU iu
khin mt n v thnh phn nht nh thuc CU (th d: Micro Seq, Mmux, ) hoc
ng d liu (th d: cc decoders).

8.2.2 Xy dng thanh ghi MIR


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l MIR. Trong ca s con gc trn bn tri,
ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim hin tn
mch con (subcircuit) m chng ta va to ra, l MIR.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con MIR s c lu cng vi Micro-ArchitectureSVxx.circ.
Trong ca s con Canvas Window ca logisim, xy dng MIR nh hnh v sau:

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

44

Ch : Cc phn t reg lm 16 thanh ghi trn c u vo en c logisim t gi tr


mc nh bng 1 (active), v vy chng ta khng cn ni 16 u en ca 16 thanh ghi li
vi nhau v truyn vo gi tr 1.

8.2.3 M phng hot ng ca thanh ghi MIR


M phng vic a d liu t Input (ni vi Control-Store) vo MIR:
Thit lp gi tr cho phn t Input, th d bng:
1111.0000.1111.0000.1111.0000.1111.0000.
S dng phn t poke tool o gi tr ca phn t input Clock t 0 ln 1, chng
ta s thy phn t Output nhn gi tr bng gi tr ca phn t Input.

8.3. Xy dng v m phng s hot ng ca Micro Seq


8.3.1 Phn tch
Mmux = LRN + LRZ + LR = RN + LZ + LR
Chng ta s xy dng mch sinh tn hiu Mmux = LRN + L RZ + LR cho d hiu hn.

8.3.2 Xy dng mch con Micro Seq


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Micro-Seq. Trong ca s con gc trn bn
tri, ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim hin
tn mch con (subcircuit) m chng ta va to ra, l Micro-Seq.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con Micro-Seq s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, xy dng Micro-Seq nh hnh v
sau y:

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

45

8.3.3 M phng hot ng ca Micro Seq


M phng hot ng ca mch con Micro-Seq: Thit lp gi tr cho phn t input
COND ln lt bng: 00, 01, 10 v 11, kim tra gi tr ti u ra MMUX ph thuc
vo N v Z nh th no:
COND = 00:

MMUX lun bng 0, khng ph thuc vo N v Z.

COND = 01:

MMUX bng 1 nu N = 1 (N v Z khng bao gi ng thi bng 1).

COND = 10:

MMUX bng 1 nu Z = 1.

COND = 11:

MMUX lun bng 1, khng ph thuc vo N v Z.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

46

BI 9: Xy dng cc thnh phn cn li ca b iu khin


9.1. Cc yu cu v ni dung chnh
Trong bi thc hnh ny, chng ta s to ra v m phng s hot ng ca cc n v
cn li ca CU, bao gm cc n v sau:
MPC: con tr vi ch th.
Increment: nhn input t MPC ri cng thm 1 v a ra u ra truyn ti Mmux.
Mmux: B dn knh 2-to-1, rng cc ng vo/ra l 8 bits.
A Decoder, B decoder v C decoder
A v B decoder l cc b gii m a ch 4-to-16 thng thng.
C decoder: ngoi chc nng gii m thng thng nh A v B decoder, C decoder
cn phi c 1 c im khc na: 1 trong 16 u ra c chn ch c truyn
mc logic 1 ra ngoi khi v ch khi ENC=1 ng thi tn hiu ng h u ra
subcycle 4 c mc 1.
Clock: n v to tn hiu ng h c 4 u ra cng tn s do chng ta chn, nhng
lch pha nhau 90 .

9.2. Xy dng v m phng hot ng ca thanh ghi MPC


9.2.1 Phn tch
Nh c th thy trn Hnh 4-09 S khi y ca mt vi kin trc trong Bi thc
hnh s 8, MPC c:
1 u vo d liu 8 bits ni vi u ra ca n v Mmux, y chnh l a ch ca vi
ch th trong Control Store cn a ra MIR thc hin.
1 u ra d liu 8 bits a vo Control Store.
1 u ra d liu 8 bits a vo n v Increment lm tng ln 1.
1 u vo iu khin ni vi u ra tn hiu chu k con th 4 (subcycle 4) ca n v
Clock, ch khi tn hiu ny bng 1 th MPC mi cht gi tr u vo (ngha l gi tr
u ra nhn gi tr ca u vo), cn khi tn hiu ny bng 0 th gi tr cha trong
MPC (v gi tr u ra) khng thay i.

9.2.2 Xy dng thanh ghi MPC


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l MPC. Trong ca s con gc trn bn tri,
ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim hin tn
mch con (subcircuit) m chng ta va to ra, l MPC.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

47

Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):


vo menu File \ Save. Mch con MPC s c lu cng vi Micro-ArchitectureSVxx.circ.
Trong ca s con Canvas Window ca logisim, xy dng MPC nh hnh v sau
y:

9.2.3 M phng hot ng ca thanh ghi MPC


M phng vic a d liu t Input from MMUX vo MPC:
Thit lp gi tr nh phn 8 bits cho phn t Input from MMUX, th d bng:
1111.0000.
S dng phn t poke tool o gi tr ca phn t input subcycle 4 t 0 ln 1,
chng ta s thy phn t output to MIR nhn gi tr bng gi tr ca phn t Input
from MMUX.

9.3. Xy dng v m phng hot ng ca n v Increment


9.3.1 Phn tch
Vi yu cu nu trong mc 9.1 th y l b cng, tan hng vo th nht l d liu ra
t MPC (chnh l a ch ca ch th a ra thi hnh); tan hng vo th 2 l hng +1. Kt
qu ca php cng s a tr li 1 trong 2 u vo ca Mmux.

9.3.2 Xy dng mch con Increment


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Increment. Trong ca s con gc trn bn
tri, ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim hin
tn mch con (subcircuit) m chng ta va to ra, l Increment.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con Increment s c lu cng vi Micro-ArchitectureSVxx.circ.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

48

Trong ca s con Canvas Window ca logisim, xy dng Increment nh hnh v


sau y:

9.3.3 M phng hot ng ca Increment


M phng vic thc hin chc nng cng 1 ca Increment:
Thit lp gi tr nh phn 8 bits cho phn t Input (from MPC), th d bng:
1111.0000.
Quan st phn t Output (to Mmux) chng ta s thy gi tr va a vo tng thm
1, bng 1111.0001.

9.4. Xy dng v m phng hot ng ca n v Mmux


y l mt b dn knh 2-to-1 thng thng, tng t Amux m chng ta tm hiu,
xy dng v m phng trong bi thc hnh s 7 (mc 7.4). iu khc nhau duy nht l
vi Mmux, cc ng d liu vo/ra l 8 bits ch khng phi 16 bits nh vi Amux.

9.5. Xy dng v m phng hot ng ca decoder


9.5.1 Phn tch
A v B decoders: y l cc decoder 4-to-16 thng thng.
C decoders: theo cc yu cu trnh by mc 9.1, mi mt trong s 16 u ra ca
C decoder phi i qua mt b m 3 trng thi (trong logisim l phn t controlled
buffer) c iu khin bi tn hiu l kt qu and logic ca ENC v (Clock subcycle
4).

9.5.2 Xy dng mch con lm A, B decoder v m phng s hot ng ca n


Chng ta c th s dng phn t Decoder trong nhm Plexers trong th vin ca
logisim, hoc chng ta s dng cc phn t c b sung thm mt s phn t khc
mch con m chng ta xy dng trng gn gng hn, nh s thc hin di y.
Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Decoder-A&B. Trong ca s con gc trn
bn tri, ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim
hin tn mch con (subcircuit) m chng ta va to ra, l Decoder-A&B.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

49

Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):


vo menu File \ Save. Mch con Decoder-A&B s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, xy dng Decoder-A&B nh hnh
v sau y:

Ch :
Nu chng ta ch dng 1 phn t Decoder trong th vin ca logisim, th chng ta khng
cn phi dng thm n 3 phn t, l:
Phn t input 4-bit input
Phn t output 16 parallel line output
Phn t Splitter chp 16 dy ra t decoder thnh 1 b dy cho gn.
M phng vic thc hin chc nng ca Decoder-A&B:
Thay i tng dn gi tr ca phn t 4-bit input t 0000 n 1111.
Quan st phn t 16 parallel line output chng ta s thy gi tr nh phn 16 bit thay
i, bit c gi tr 1 chuyn t v tr 0 n v tr 15, trong khi cc bit cn li bng 0.

9.5.3 Xy dng mch con lm C decoder v m phng s hot ng ca n


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Decoder-C. Trong ca s con gc trn bn
tri, ngoi tn main v tn cc mch con m chng ta to ra t trc, logisim hin
tn mch con (subcircuit) m chng ta va to ra, l Decoder-C.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con Decoder-C s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, xy dng Decoder-C nh hnh v
sau y:

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

50

M phng vic thc hin chc nng ca Decoder-C: Thc hin tng t nh khi m
phng Decoder-A&B, nhng thc hin 2 ln:
Ln th nht thit lp gi tr cho ENC v CLOCK sao cho ENC.CLOCK bng 1.
Ln th hai thit lp gi tr cho ENC v CLOCK sao cho ENC.CLOCK bng 0.

9.6. Xy dng v m phng hot ng ca Clock


9.6.1 Phn tch
y l n v khng b iu khin bi bt c n v no khc trong vi kin trc. Nhim
v ca n l sinh ra 4 tn hiu in lch pha nhau iu khin s phi hp cng vic
nhp nhng gia cc thnh phn thuc ng d liu v thuc n v iu khin CU.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

51

Vi vi kin trc c nghin cu trong mn hc Kin trc my tnh, tr cc ch th Read


v Write, cc ch th c thi hnh trong thi gian nh nhau v c gi l 1 chu k
ng d liu. Nh vy, cc tn hiu ng h c coi l lch pha nhau 900.

9.6.2 Xy dng mch con lm n v Clock


Vo menu Project \ Add Circuit, logisim s hin ln mt ca s nh, hi tn m ta
mun t cho mch in. Hy t tn l Clock-4-subcycles. Trong ca s con gc
trn bn tri, ngoi tn main v tn cc mch con m chng ta to ra t trc,
logisim hin tn mch con (subcircuit) m chng ta va to ra, l Clock-4subcycles.
Lu (save) mch in m chng ta to ra vo file (Micro-Architecture-SVxx.circ):
vo menu File \ Save. Mch con Clock-4-subcycles s c lu cng vi MicroArchitecture-SVxx.circ.
Trong ca s con Canvas Window ca logisim, xy dng Clock-4-subcycles nh
hnh v sau y. V trong th vin ca logisim ch c 1 loi phn t clock 1 pha, cho
nn chng ta bt buc phi s dng thm mt s phn t khc na to 4 tn hiu
ng h c cng tn s nhng lch pha nhau 900. Cc phn t c s dng xy
dng mch con ny bao gm:
Clock: ly trong th vin ca logisim. S thuc tnh ca n c th thay i c l
5, ngha cc thuc tnh rt d hiu. Ngoi ra khi m phng hot ng ca clock,
chng ta c th thay i c:
+ Tn s: t 0.25 Hz n 4096 Hz (vo Menu: Simulate \ Tick Frequency).
+ Cch chy ng h: 1/ Tick One ( debug); 2/ Tick Enable ( chy bnh
thng).

Counter: phn t m c trong th vin. Counter c cc thuc tnh sau:


+ Data bits (1..32): ln ca s m Counter s m. Chng ta cn t bng 2
Counter m t 0 n 3.
+ Maximum value: gii hn s cao nht m Counter m, phi t khng ln
hn gi tr cha c trong Data bits.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

52

+ Action on Overflow: 1/ Wrap around (m vng li t s b nht); 2/ Stay at


value (dng m) ...
+ Trigger: 1/ Rising Edge (kch hot vic m bi sn dng); 2/ Falling Edge
(kch hot vic m bng sn m).
+ Label: nhn do chng ta t.
+ Label Font: kiu v c font ch ca Label.
Trn hnh v, Counter c tt c 7 chn vo/ra. Trong Canvas Window, khi
chng ta di con tr n cc chn ny, logisim s hin mt dng gii thch:
+ ^: Clock: value may update on trigger. Khi tn hiu (xung ng h) t vo
y thay i t mc thp ln mc cao, s lm thay i gi tr cha trong
counter 1 n v. S thay i c th l tng hoc gim ph thuc vo mt s
tn hiu iu khin khc, s c m t di y.
+ 0: Clear: clear, when 1 resets to 0 asynchronously. Gi tr mc nh u
vo ny l 1, chng ta c th trng chn ny.
+ ct: Count, when 1, counter increments (or decrement if load =1). Nu a
gi tr 1 vo y, counter s m tin.
+ D: value to load into counter. y l u vo cho gi tr ban u (nhiu bit)
m chng ta mun np cho counter.
+ Q: Output: current value of counter. y l u ra cho gi tr hin thi ca
counter.
+ u vo trn cng bn tri (khng c k hiu): Load: when 1, loads from data
input (if Count =0) or decrements.
Decd (Decoder): y l phn t gii m thng thng, c sn trong th vin.
4 phn t output c ghi nhn 1, 2, 3, 4 tng ng vi 4 u ra truyn tn hiu
ca 4 chu k con.

9.6.3 M phng s hot ng ca Clock


Hy chn Tick Enable hoc chn Tick Once nhiu ln, chng ta s nhn thy ni
dung phn t counter thay i tng dn t 0 n 3 v vng li gi tr 0.
C th thay i tn s ng h thay i tc m (Simulate \ Tick Frequency).

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

53

PH LC A: HNG DN S DNG LOGISIM


Logisim c cc hng dn rt tt; khi ang chy logisim, c th m Help xem cc
ti liu hng dn sau:
-

The Guide to Being a Logisim User

Beginners tutorial

Library Reference

Sau y l bn dch ti liu The Guide to Being a Logisim User ca mt nhm sinh
vin K53CA, chun b cho bo co seminar ca nhm thuc mn hc Kin trc my
tnh. Bn dch ny cn mt s li v thiu st, nhng c th dng tm c nu ngi
c ngi c bn ting Anh.

Logisim l mt cng c gio dc dng cho vic thit k v m phng cc mch lgc s.
Vi giao din n gin dng thanh cng c v vic m phng cc mch ging nh mch
c xy dng, s rt d dng n gin ha vic hc nhng t tng c bn nht lin
quan n mch logic. Vi chc nng xy dng cc mch ln t cc mch con nh hn v
v cc b dy ch vi mt c r chut, Logisim c th c s dng( v ang c s
dng) thit k v m phng ton b cc CPU cho mc ch gio dc.
Sinh vin cc trng i hc v cao ng trn ton th gii s dng Logisim cho rt
nhiu mc ch, trong c:
Mt mun trong tng quan khoa hc my tnh i cng

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

57

Mt n v hc trnh trong kha hc t chc h thng my tnh ca sinh vin


nm th hai
Trong sut hc k ca kha hc kin trc my tnh mc chuyn su.
Hng dn s dng Logisim m bn ang c l ti liu tham kho chnh thc cho cc
tnh nng ca Logisim. Phn th nht ca ti liu l mt chui cc mc gii thiu
nhng phn chnh ca Logisim. Cc mc ny c vit sao cho chng c c k
cng hc tt c nhng tnh nng quan trng nht ca Logisim.
Nhng mc cn li l mt tp hp ca cc t liu tham kho v ch thch ca mt vi
kha cnh nh hn ca Logisim.

1. CH DN CHO NGI MI S DNG


Cho mng bn n vi Logisim
Logisim cho php bn thit k v m phng mch cc k thut s. N c nh hng
nh mt cng c gio dc, s dng gip cho vic hc cc mch hot ng nh th
no.
To practice using Logisim, let's build a XOR circuit - that is, a circuit that takes two
inputs (which we'll call x and y) and outputs 0 if the inputs are the same and 1 if they are
different. The following truth table illustrates.
tp s dng Logisim, chng ta s xy dng mt mch XOR- mt mch ly 2 gi tr
u vo ( x v y) v cho gi tr u ra l 0 nu x v y ging nhau, 1 nu x v y khc nhau.
Bng chn l sau y th hin.

Chng ta nn thit k mch nh vy trn giy.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

58

Tuy nhin bi v mch c v trn giy khng c ngha mch l chnh xc. xc
minh mch , chng ta s c n trn Logisim v kim tra. Nh mt li th thm na,
chng ta s c mt mch p hn ci m ta s c nu v bng tay.
Enjoy your circuit-building!

1.1 Bc 0: T nh hng chnh bn thn bn


Khi khi ng Logisim, bn s thy mt ca s gn ging hnh bn di. Mt vi chi tit
c th khc nhau mt cht v bn c th s dng h thng khc so vi ca ti.

Logisim c chia thnh 3 phn, explorer pane, attribute table ( bng thuc tnh) v
canvas. Bn trn 3 phn ny l thanh menu ( menu bar ) v thanh cng c ( toolbar).

Chng ta c th nhanh chng b qua explorer pane v attribute table: chng ta s khng
kim tra chng trong khun kh bn hng s dng dn ny v bn chi c th b qua
chng. Cng vi , menu bar s c cc bn t khm ph.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

59

Cn li toolbar v canvas. Canvas l ni bn c th v mch ca minhf v toolbar bao


gm cc cng c m bn s s dng hon thnh n.

1.2 Bc 1: Thm cc cng


Hy nh li rng chng ta ang c gng xy dng mch sau trn Logisim.

Ti khuyn co vic xy dng mch bng cch chn cc cng vo trc ging nh s
sp xp khung xng v sau mi lin kt chng li bng dy ni. Vic trc tin ta s
lm l chn thm 2 cng AND. Kch chut vo cng c AND ( AND tool) trn thanh
cng c. Sau kch chut vo ni m bn mun cng AND th nht i n. Hy chc
chn rng bn dnh ch cho phn bn tri. Sau bn tip tc kch chut vo
AND tool mt ln na v t cng AND th hai bn di cng th nht.

n 5 du chm pha bn tri ca cng AND. Chng l nhng im m dy ni c


th c gn. Tnh c chng ta s ch dng 2 trong s chng cho mch XOR ca chng
tam tuy nhin i vi cc mch khc, bn s nhn ra rng c nhiu hn 2 dy trong mt
cng AND l hu dng,
By gi, thm 1 cng khc vo mch. Kch vo OR tool ( ); , sau kch vi ni bn
mun t n v t 2 cng NOT trn bn v s dng NOT tool ( ).

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

60

Ti dnh 1 t khong trng gia cc cng NOT v cc cng AND, nu bn mun, bn


c th t chng ngc nhau v tit kim cng sc lin kt chng li vi nhau bng dy
ni sau ny.
By gi chng ta mun thm 2 gi tr u vo x v y vo bn v. Chn Input tool ( ) v
ng cc cht xung. Bn cng nn t mt cht u ra bn cnh cng u ra ca OR
bng cch dng Output tool ( ). ( Mt ln na, ti cha li mt cht khong trng gia
cng OR v cht u ra, nhng bn nn t chng ngay bn cnh nhau).

Nu bn khng thch ni m bn t phn t no , bn c th chn n bng Edit tool


( ) v th n vo phn bn v. Hoc bn c th xa hon ton phn t bng cch
chn Delete trn bng chnh sa ( Edit menu ) hoc n phm Delete.
Khi bn t bt c thnh phn no ca mch, bn s nhn thy rng ngay khi thnh phn
c t vo, Logisim quay li Edit tool th nn bn c th di chuyn thnh phn
mi c t vo hoc kt ni n vi cc thnh phn khc bng cch to ra cc dy
ni. Nu nh bn mun thm vo mt bn sao ca thnh phn mi thm vo, mt phm
tt l t hp Ctrl + D nhn i thnh phn c chn. ( Mt vi my tnh s dng
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

61

phm khc cho menus, v d nh Command key trn my Macintoshes. Bn c th bm


phm vi phm D ).

1.3 Bc 2: Thm dy ni
Sau khi c tt c cc thnh phn c thit lp trn bn v, bn c th bt u thm
cc on dy ni. Chn Edit Tool ( ). Khi con tr trn im c th ni dy, mt vng
trn nh mu xanh s bao quanh im . Nhn chut im v ko dy n ni bn
mun.
Logisim kh thng minh trong vic chn dy ni. Bt c khi no mt dy kt thc trn
dy khc, Logisim s t ng ni chng li vi nhau. Bn cng c th ko di hoc thu
gn mt dy ni bng cch ko mt trong hai u ca dy, s dng writing tool.
Dy ni trong Logisim ch c th nm ngang hoc dc. c th ni u vo trn vi
cng NOT v cng AND, ti cn dng thm 3 dy khc nhau.

Logisim t ng ni cc dy vi cc cng v cc dy vi nhau. Trong gm c vic t


ng v chm trn phn giao nhau hnh ch T ca cc dy nh trn hnh, th hin rng
cc dy c ni vi nhau.
Khi v cc dy ni, bn c th thy mt vi dy mu xanh da tri hoc dy mu xm.
Mu xanh da tri th hin rng gi tr mt im l khng xc nh, mu xm th hin
rng dy cha c ni vi bt c phn t no. y khng khng phi l vn ln
trong qu trnh xy dng mch ca bn. Tuy nhin khi bn hon thnh mch ca mnh,
cc dy khng c c mu xanh hoc xm. ( Chn cha c kt ni ca cng OR s
vn c mu xanh, iu l chp nhn c).
Nu bn c mt dy mu xanh hay xm khi m bn cho rng tt c cc dy c ni
vi nhau, th cng c ngha l c nhm ln u . Vic ni dy ng ch l rt
quan trng. Logisim v cc du chm nh trn cc phn t ch ra ni cc dy c th
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

62

c ni ti. Khi bn thc hin, bn s thy nhng du chm chuyn t mu xanh sang
mu xanh nht hoc xanh thm.
Khi tt c cc dy c kt ni, chng s c mu xanh nht hoc xanh thm.

1.4 Bc 3: Chn text


mch hot ng c, vic chn text l khng cn thit; tuy nhin nu bn mun gii
thiu mch ca bn cho ngi khc, cc nhn s gip bn th hin mc ch ca cc phn
nh trong mch ca bn.
Chn text tool ( ). Bn c th kch chut vo cht u vo v bt u t cho n mt ci
nhn. ( S l tt hn nu bn kch trc tip vo cht u vo ch khng phi ni bn
mun on text i n bi v nhn s di chuyn theo cht). Bn c th lm tng t i
vi cht u ra. Hoc bn c th ch kch chut vo v tr c v g text t nhn bt
c ni no khc.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

63

1.5 Bc 4: Kim tra mch


Bc cui cng l kim tra li mch chc chn rng n thc s lm nhng th m
chng ta d nh. Logisim m phng mch. Hy ch xem chng ta ang u

Lu rng cc c 2 cht u vo v cht u ra u ang cha cc s 0. iu ni ln


rng mch tnh ra gi tr 0 khi c hai gi tr u vo u l 0.
By gi ta s th mt t hp gi tr u vo khc. Chn poke tool ( ) v thay i gi tr
u vo bng cch kch vo u vo . Mi ln bn thay i u vo, gi tr ca n s
c cht li. Chng ta u tin s n vo u vo bn di

Khi bn thay i gi tr u vo, Logisim s ch ra cho bn gi tr no di chuyn theo dy


ni bng cch v chng mu xanh nht cho gi tr 1 v xanh thm ( gn nh mu en)
cho gi tr 0. Bn cng c th nhn thy rng gi tr u ra chuyn thnh 1.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

64

Chng ta kim tra 2 dng u tin ca bng chn l, v cc gi tr u ra u tha


mn cc gi tr c nh trc.

Bng cch n vo cc cng tc trn cc cch kt hp khc, chng ta c th xc minh 2


dng cn li. Nu cc gi tr u tha mn th mch c hon thnh v c th hot
ng c.
hon thnh cng vic, bn c th s mun lu li hay in mch ca mnh ra.File menu
cho php bn lm vic v ng nhin cng cho php bn thot khi Logisim. Nhng
ti sao li thot vo lc ny?
Lc ny bn hon thnh bi hng dn, bn c th th nghim Logisim bng cch xy
dng cc mch ca ring bn. Nu mun xy dng cc mch vi cc tnh nng phc tp
hn, bn nn xem thm phn cn li ca mc Help bit c th lm c nhng g
khc. Logisim l mt cng c mnh, n cho php bn xy dng v th nghim cc mch
rt ln; qu trnh tng bc mt ny mi ch phc ha nn lp b mt ca Logisim.

2. TH VIN V CC THUC TNH


Trong mc ny, chng ta s xem xt cch s dng hai lnh vc chnh khc ca ca s
Logisim, l explorer pane v attribute table.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

65

2.1 Explorer pane


Logisim sp t cc cng c trong cc th vin. Chng c th hin nh cc th mc
trong explorer pane; tip cn cc thnh phn ca th vin, bn ch cn phi kch p
vo th mc tng ng. Di y, ti m th vin cc Cng v chn cng c NAND
trong . Bn c th thy rng Logisim by gi c th thm cc cng NAND vo
mch.

Nu bn nhn qua cc la chn trong th vin Cng, bn s nhn thy rng chng ta
khng cn phi t xy dng mch XOR nh lc trc: N c dng sn trong
Logisim.
Khi bn to ra mt d n, n s t ng bao gm mt vi th vin:

Base ( nn mng): Cc cng c c tch hp s dng Logisim.


Gates( cc cng): Cc thnh phn biu din cc chc nng s n gin.
Plexers: Cc thnh phn ghp ni phc tp hn nh b dn knh ( multiplexer),
b gii m ( decoder).
Arithmetic ( s hc): Cc thnh phn biu din s hc.
Memory ( b nh): Cc thnh phn nh d liu nh cc flip-flop, thanh ghi v
RAM.

Logisim cho php ta thm cc th vin mi, thng qua th Load Library trong mc
Project. Bn c th thy rng Logisim c 3 lp th vin.

Built-in libraries ( th vin dng sn) l cc th vin c phn phi cng vi


Logisim. Chng c xc minh trong Library Reference. ( tham kho th vin).

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

66

Logisim libraries ( th vin Logisim) l cng trnh c dng bn trong


Logisim v c lu vo a ging nh cng trnh Logisim. Bn c th pht
trin mt tp hp cc mch trong mt cng trnh n l ( nh c gii thiu
tng mc Subcircuits ca tp hng dn ny) sau s dng tp hp mch
nh mt th vin cho cc cng trnh khc.

JAR libraries ( cc th vin JAR) L cc th vin c pht trin trong Java


nhng khng c phn phi cng vi Logisim. Bn c th download th vin
JAR c vit bi nhng ngi khc, hay bn c th vit th vin ca ring
bn nh c gii thiu trong mc JAR Libraries . Pht trin mt th vin JAR
kh hn nhiu so vi pht trin mt th vin Logisim, tuy nhin cc thnh phn
c th th v hn rt nhiu, bao gm nhng th nh cc thuc tnh v s tng tc
vi ngi s dng. Cc th vin dng sn ( khng ging Base) c vit s dng
giao din chng trnh ng dng ( API ) ging vi cc th vin JAR c th s
dng nn chng biu hin mt cch xc ng h cc chc nng m cc th vin
JAR c th h tr.
Mt s th vin JAR c phn phi m khng c thng tin v lp Java ta s bt
u cng. Khi np JAR, Logisim s nhc bn g vo mt tn lp. Tn lp nn
c cung cp bi ngi phn phi file JAR cho bn.

g b mt th vin, chn Unload Library t mc Project. Logisim s ngn bn


khi vic g b cc th vin cha cc thnh phn c s dng trong mch, vic s
xut hin trn thanh cng c hoc c nh x n mt nt bm ca con chut.
Mt cch tnh c, mt th vin v mt k thut ch cha cc cng c m khng cha cc
thnh phn. V th trong th vin nn ( Base library), bn s thy Poke Tool ( ), Edit
Tool ( ) v cc cng c khc, chng khng trc tip ng vi cc thnh phn ring r
no. Hu ht cc th vin ch cha cc cng c dng cho vic thm cc thnh phn ring
r; tt c cc th vin dng sn ngoi th vin nn ( Base library) u ging nh vy.

2.2 Bng thuc tnh


Nhiu thnh phn c cc thuc tnh ring, cc l c im dng cho vic cu hnh
cch mt thnh phn chy hay xut hin. Bng thuc tnh c dng cho vic quan st
v trng by gi tr thuc tnh ca mt thnh phn.
chn cc thuc tnh ca mt thnh phn m bn mun quan st, s dng Edit tool ( )
kch chut vo thnh phn . ( Bn cng c th kch chut phi hay dng t hp Ctrl+
chut tri vo thnh phn v chn th Edit tool ( ) t ca s hin ra. Cng vi ,
vic thao tc vi mt thnh phn qua Poke tool ( ) hay Text tool ( ) cng s th hin
cc thuc tnh ca thnh phn .

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

67

hnh di y m t nhng g din ra khi ta chn cng u vo pha trn ca mch XOR
ri ko mn hnh xung phn chn font cho tiu . (Label Font attribute)

chnh sa mt gi tr thuc tinh, kch chut vo gi tr . Giao din chnh sa mt


thuc tnh s ph thuc vo chnh thuc tnh m bn ang thay i; trong trng hp
chnh sa font cho tiu , mt bng hi thoi s hin ra cho vic chn font mi; tuy
nhin mt vi thuc tnh ( nh v tr tiu ) s hin ra mt menu nh hn m bn s la
chn gi tr t .
Mi loi thnh phn c mt tp hp cc thuc tnh khc nhau; bit c chng c
ngha g, bn c th xem ti liu thch hp Library Reference.
Nu nh bn la chn nhiu thnh phn qua cng c chnh sa( Edit tool) , bng
thuc tnh s hin ra cc thuc tnh chung ca tt c cc thnh phn ( ngoi tr cc
dy). Nu cc thnh phn c chn khng c mt gi tr thuc tnh no c chung cho tt
c, phn hin ra s trng. Bn c th 1 ln thay i gi tr thuc tnh ca tt cc cc thnh
phn c chn thng qua bng thuc tnh.

2.3 Thuc tnh ca cng c


Tt c cc cng c thm cc thnh phn cho mch u c mt tp hp cc thuc tnh,
chng c truyn tip cho cc thnh phn to bi cng c , mc du cc thuc tnh ca
cc thnh phn c th c thay i sau m khng lm nh hng thuc tnh ca cng
c. Khi bn la chn mt cng c, Logisim s thay i bng thuc tnh th hin cc
thuc tnh ca cng c .
V d nh khi bn mun thit lp cc cng AND nh hn. Ngay t by gi, mi khi
chng ta chn cng c AND, Logisim s to ra mt cng AND ln. Tuy nhin nu chng
ta chnh sa thuc tnh kch c cng ngay sau khi la chn cng c ( trc khi t cc
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

68

cng AND ca n vo mch), chng ta s thay i cc thuc tnh cho cng c sau
cc cng AND c chn vo thng qua cng c s ti m hn.

By gi, chng ta c th xa hai cng AND tn ti v chn vo 2 cng AND mi vo


v tr c. Ln ny, chng s c thu gn. ( Nu bn chn gim s lng u vo xung
3, cng AND s khng c cc phn m rng pha bn tri. Nhng bn s phi ni li
cc dy ni trong mch cc dy lin kt c vi pha tri ca cc cng AND).

i vi mt s cng c, cc biu tng cng c s th hin mt gi tr vi thuc tnh. V


d cng c cht c biu tng ging vi gi tr m thuc tnh b mt th hin.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

69

Cc cng c trong thanh cng c u c mt b thuc tnh tch ri t cc cng c tng


ng trong explorer pane. V th, cho d chng ta c thay i cng c AND trong thanh
cng c to ra cc cng AND thu gn, cng c AND trong th vin cng s vn to ra
cc cng AND ln tr khi bn thay i lun c cc thuc tnh ca n.
Trn thc t, cc cng c cht u vo v u ra trn thanh cng c mc nh u l cc
trng hp ca cng c cht ( Pin) trong th vin nn, tuy nhin cc b thuc tnh l
khc nhau. Biu tng ca cng c cht ( Pin tool) c v thnh mt vng trn hay mt
hnh vung ty theo gi tr u ra ca n.
Logisim cung cp mt phm tt rt tin li cho vic thay i thuc tnh hng ( Facing
tool), thuc tnh ny iu khin hng m cc thnh phn s quay n: Vic g mt
phm mi tn khi ang chn cng c ny s t ng thay i hng ca thnh phn.

3. CC MCH CON
Khi bn xy dng cc mch ngy cng phc tp hn, bn s mun xy dng cc mch
nh hn m c th s dng nhiu ln nh mt mun c lng vo trong cc mch ln
hn. Trong Logisim, mt mch nh c s dng trong mch ln hn c gi l mch
con.
Nu bn quen vi lp trnh, bn cng s quen vi khi nim chng trnh con ( cn
c gi l th tc, hm hay phng php trong cc ngn ng khc nhau). Khi nim v
mch con cng tng t nh khi nim v chng trnh con trong lp trnh, n c s
dng cho cc mc ch ging chng trnh con: chia nh mt cng vic ln thnh cc
phn nh hn, tit kim cng sc nh ngha li cc phn ging nhau v cho vic sa
li d dng, thun tin hn.

3.1 To mi cc mch
Tt c cc cng trnh trong Logisim u l mt th vin cc mch. dng n gin nht,
mi cng trnh ch c mt mch ( mc nh gi l main) nhng c th thm vo mt
cch d dng: Chn Add Circuit ( chn mch)trong th Project v t mt ci tn
bt k cho mch mi m bn mun to ra.
Gi s ta mun xy dng mt b dn knh 2-to-1 vi tn l 2:1 MUX. Sau khi thm
mch, Logisim s hin ra nh sau:

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

70

Trong phn explorer pane, bn c th thy rng cng trnh hin ti bao gm hai mch,
main v 2:1 MUX. Logisim v hnh mt ci knh lp bn trn biu tng ca mch
ang xt; tn ca mch ang xt cng s hin ln trn thanh tiu .
Sau khi chnh sa mch cho ng vi mt b dn knh 2:1, ta s c mt mch nh sau:

3.2 S dng mch con


Gi s chng ta mun xy dng mt b dn knh 4-to-1 s dng cc b dn knh 2-to-1
m ta xy dng. u tin ta s to mi mt mch vi tn gi 4:1 MUX. chn cc
b dn knh 2-to-1 vo mch, kch vo 2:1 MUX mt ln trn explorer pane chn n
nh mt cng c, sau chng ta c th chn cc bn sao ca n, c th hin di
dng cc hp nh, bng cch kch chut vo bn v.

Nu bn kch p vo mch 2:1 MUX trn explorer pane ca s chng trnh s chuyn
thnh chnh sa mch 2:1 MUX.
Sau khi dng mch, chng ta s c nh hnh sau:
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

71

Mch dn knh 4:1 ca ta s dng 3 bn sao ca b dn knh 2-to-1, mi bn sao c


v nh mt ci hp vi cc chm dc theo cnh ca hp. Cc du chm trong hp ny
tng ng vi cc cht u vo v u ra trong mch 2:1 MUX. 2 du chm mt pha
Ty ca hp ng vi 2 cht quay mt v hng ng trong mch 2:1 MUX; chm mt
pha ng ng vi cht quay sang hng ty ca mch 2:1 MUX ( tnh c cng l mt
cht u ra); v chm mt pha nam ca hp ng vi cht quay sang hng bc ca
mch 2:1 MUX. Th t ca 2 du chm trn mt pha ty ca hp tng ng vi th t
t trn xung di trong thit k mch con. ( nu cng c nhiu chm nh trn mt bc
v nam ca hp, chng s tng ng vi th t phi tri trong mch con).
Nu cc cht trong bng mch con c nhn kt hp vi chng, Logisim s hin th nhn
trong tip ( mt khung ch tm thi) khi ngi dng tr chut vo v tr tng ng
trong phn t mch con. ( nu bn cm thy cc tip ny bt tin, bn c th tt b chng
thng qua Project/Options/ Canvas).

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

72

Mt vi cc thnh phn khc cng s hin th cc tip: mt s cht ca mt flip-flop dng


sn, tr chut vo n s hin ra dng ch gii v cng vic ca cht.
Mt cch ngu nhin, tt c cc cht i vi mt mch ch c th l hoc u vo hoc
u ra. Mt s cc chp c sn xut c cc chn ng vai tr l u vo trong mt s
trng hp v ng vai tr l u ra trong cc trng hp khc; bn khng th xy dng
cc chip trong Logisim ( t nht l i vi phin bn hin thi).
Logisim s duy tr thng tin trng thi khc nhau cho tt c cc mch con xut hin trong
mch. V d mt mch c mt flip-flop v mch c s dng nhiu ln nh mt
mch con, khi flip-flop ca mi mt mch con s c gi tr ring ca n khi m phng
mch ln hn.
By gi chng ta c mt b dn knh 4-to-1 c nh ngha, chng ta c th s dng
n trong cc mch khc. Logisim khng gii hn mt mch c th c lng vo su n
u- mc d n s ngn chn cc mch c lng chnh bn trong chng.
Ch : Khng c g l sai khi chnh sa mt mch m ang c s dng nh mt mch
con; trn thc t iu l rt ph bin. Bn hy nh rng bt c mt thay i no trn
cc cht ca mch ( chn, xa hay di chuyn chng) cng s sp xp li chng trong
mch ln. V th nu bn thay i mt cht no ca mt mch, bn cng s cn phu
chnh sa tt c cc mch s dng mch nh mt mch con.

3.3 Sa li cc mch con


Khi bn kim tra cc mch, bn s thng pht hin ra li. tm ra li sai, vic kim tra
nhng g ang din ra trong cc mch trong khi vn hnh bng mch tng th gip bn.
Bn c th thc hin vic khi ang xem xt mch tng th bng cch m ca s popup ca mch con ( kch chut phi hoc t hp Ctrl+ chut tri vo hp) sau bn chn
mc View.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

73

Sau khi bn chn nh vy, ca s quan st s chuyn sang mch con.

Ch rng gi tr ca cc cht trong mch con trng vi cc gi tr c truyn cho


chng trong mch cha chng.
Trong khi i vi mch con, bn c th thay i n theo bt c cch no bn mun; bt
c thay i no ca cc gi tr ca cht cng s c truyn cho mch cha. ( Nu bn
th chuyn gi tr ca mt cht s dng Poke Tool. Logisim s m ra mt khung hi
thoi hi bn c mun to mi mt trng thi hay khng; tr li Yes s tch trng thi
c xem xt vi mch cong khi trng thi ca mch bn ngoi, trong khi n cu tr li
No s kt thc yu cu thay i gi tr).
Bn s kt thc vic xem xt v chnh sa mch tng th bng cch kch p vo
explorer pane, hay thng qua ca s con Go Out To State trong phn m phng
(Simulate menu)

3.4 Th vin Logisim


Mi mt cng trnh Logisim u t ng l mt th vin c th c np vo cc cng
trnh Logisim khc: Ch cn lu n trong mt file v sau np th vin khi ang
trong mt cng trnh khc. Tt c cc mch c nh ngha trong mch u tin s c
nh mt mch con cho cng trnh th hai. Tnh nng ny cho php bn ti s dng cc
thnh phn hay dng trong cc cng trnh v chia s cc thnh phn a thch vi ngi
khc.
Mi mt cng trnh u c mt mch chnh( main circuit) nh sn, mch chnh ny c
th c thay i thnh mch hin hnh thng qua ty chn Set As Main Circuit trong
phn Project. ngha duy nht ca mch chnh l n s c hin ra trc tin khi bn
m cng trnh ra. Tn mc nh ca mch khi mi c to ra (main) khng quan
trng v bn c th i tn hoc xa mch mt cch t do.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

74

Vi mt th vin Logisim c np, bn s c php xem cc mch v qun l cc


trng thi ca chng, tuy nhin Logisim s ngn khng cho bn thay i thit k ca
mch cng nh cc d liu khc c lu tr trong file.
Nu bn mun sa mt mch trong th vin Logisim c np vo, bn s cn m
rieend n trong Logisim. Ngay khi bn lu n, cng trnh khc s t ng np bn chnh
sa; nhng nu n khng thc hin chc nng ny, bn c th kch chut phi vo th
mc library trong explorer pane v chn Reload Library.

4. DY
Trong cc mch in Logisim n gin, hu ht cc dy ch mang 1 bit, nhng Logisim cng cho php
bn kt hp cc dy vo mang nhng gi tr nhiu bit. S lng bit i qua dy c gi l rng bit.

4.1 To cc b
Mi u vo v u ra trn mt mch u c 1 chiu rng bit kt hp vi n. Thng th
chiu rng bit l 1, v khng c cch no thay i n, nhng nhiu thnh phn trong
Logisim bao gm cc thuc tnh cho php bn tu chnh rng bit u vo v u ra
ca chng.
nh chp mn hnh minh ho di y l mt mch n gin cho vic tm kim cc
bitwise AND ca hai u vo ba bit. Ch lm th no 3 bit u ra l AND ca 2 u
vo. Tt c cc thnh phn c iu chnh ph hp vi d liu 3 bit thng qua
nhng data bits thuc tnh. nh chp mn hnh biu th cc thuc tnh ca cng AND,
bao gm cc data bits thuc tnh ca 3.

Tt c cc thnh phn trong Logisim xc nh mt chiu rng bit cho mi u vo v u ra. Ngc li,
chiu rng bit ca dy l khng xc nh. Thay vo , chiu rng ca dy iu chnh theo cc thnh
phn m n c nh km. Nu mt dy kt ni hai thnh phn c yu cu m rng bit khc nhau,
Logisim s bo co " rng khng tng thch" v ch ra cc c tr vi phm bng mu da cam. hnh
di, chiu rng bt ca u ra b thay i thnh 1, v vy Logisim bo co rng khng th kt ni mt
gi tr 3 bit vi 1 gi tr 1 bit

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

75

Cc dy kt ni cc a im khng tng thch (mu da cam) khng mang gi tr. Vi


nhng dy mt bit bn c th thy ngay gi tr m dy mang v Logisim t cc dy vi
mu xanh l cy nht hoc xanh l cy m ty theo gi tr. N khng hin th cc gi tr
ca nhng dy mang nhiu bit: chng thng c t n gin bng mu en. Tuy nhin
bn c th bit gi tr ca mt si dy bng cch nhn vo n s dng cng c poke.

4.2 Dng c r nhnh


Khi bn lm vic vi nhng gi tr mang nhiu bit, bn thng mun chuyn cc bit khc nhau
theo nhng hng khc nhau. Cng c splitter trong th vin c s cho php bn thc hin vic
ny.
V d, ta mun xy mt mch tnh AND ca 2 nibble ca chnh 8 bit u vo ca n (bn bit
trn v bn bit thp hn). Chng ta s c mt gi tr 8 bit t cc nt u vo, v ta mun chia n
thnh 2 gi tr 4 bit. Trong mch di y chng ti s dng mt dng c r nhnh (splitter)
lm iu ny: u vo 8 bit n splitter (tng t nh chn ca con chim) ri b phn ra thnh
2 gi tr 4 bit, v c a vo cc cng AND ri t c ra u ra.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

76

Trong v d ny, splitter thc s chia mt gi tr u vo thnh nhiu gi tr ri gi i. Nhng


splitter cng c th kt hp nhiu gi tr vo thnh mt gi tr duy nht. Trong thc t, nhng
splitter ny l khng c nh hng (non-directional): chng c th gi cc gi tr theo mt
ng vo mt thi im no , nhng s theo mt ng khc.vo mt thi im sau , v
chng thm ch c th gi c 2 ng mt lc. Nh trong v d di y c mt gi tr i v
pha ng thng qua hai splitter, sau c nh tuyn tr li v pha ty qua 2 splitter mt
ln na, v sau li tr v pha ng, ni n gp u ra.

Cha kha c th hiu c cc splitter l nhng thuc tnh ca n.

4. 3 Mu ca dy
Dy in trong Logisim c y mu sc ca cu vng:

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

77

Mu xm: rng bit ca dy in khng r. iu ny xy ra bi v dy in khng c gn


vo bt k u vo hay u ra no ca cc thnh phn. (Tt c cc yu t u vo v u ra c
rng bit c nh ngha sn.)
Mu xanh da tri: dy ny mang nhng gi tr 1 bit, nhng khng bit c gi tr n ang
mang
Mu xanh l cy thm: mang bit 0
Mu xanh l cy nht: mang bit 1
Mu en: Dy mang mt gi tr nhiu bit. Mt s hoc tt c cc bit c th khng c ch
nh.
Mu : Dy mang mt gi tr li. iu ny thng pht sinh bi s mu thun cc gi tr trn
dy.
Mu da cam: Cc thnh phn trn dy khng chp nhn rng bit. Dy mu da cam rt c kh
nng b hng. N khng mang gi tr gia cc thnh phn.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

78

5. PHN TCH TNG HP

Tt c cc loi mch u ri vo 2 mc chnh: Trong mt mch tng hp, tt c cc mch u ra


u l s tng hp cht ch ca cc mch u vo hin ti, trong khi trong mch tun t, mt s
kt qu u ra c th ph thuc vo cc yu t u vo trc (chui u vo theo thi gian ).
Mc cc mch tng hp thng n gin l s kt hp ca 2 mch. Cc hc vin s dng ba
dng c chnh tng hp cc mch nh vy:
1. Mch logic
2. Cc biu thc boolean
3. Bng chn l
Cc m un phn tch tng hp cho php bn chuyn i gia ba dng c ny mi hng.
l mt cch c bit thun tin to ra v tm hiu mch vi mt s t bit u vo v u ra.

5.1 Cch m bng phn tch tng hp


Phn ln cc m un phn tch tng hp c truy cp thng qua mt ca s duy nht, n cho
php bn xem cc bng chn l v biu thc Boolean. Ca s ny c th c m bng hai cch.
Thng qua menu Window
Chn Combinational Analysis, v ca s Phn tch tng hp s hin ra. Nu bn cha tng
m ca s ny trc y, ca s ny s khng hin ra mch no c.
Ch c ng 1 ca s Phn tch tng hp d bao nhiu project ang c m ra, khng c cch
no to ra 2 ca s m ra cng 1 lc.
Thng qua menu Project

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

79

T mt ca s chnh sa mch in, bn cng c th yu cu Logisim phn tch mch bng cch
chn Analyze Circuit t menu Project. Trc khi Logisim m ra ca s, n s tnh ton cc
biu thc Boolean v bng chn l tng ng vi mch in v t ni bn c th xem.
c th phn tch mach thnh cng, mi u vo phi c gn vi mt cht u vo v mi
u ra phi c gn vi mt cht u ra. Logisim ch phn tch nhng mch vi nhiu nht 8
u vo hoc 8 u ra, v chng u phi l nhng cht 1 bit. Nu khng bn s nhn thy thng
bo li v ca s s khng m ra.
Trong xy dng cc biu thc Boolean tng ng vi mt mch, Logisim u tin s c gng
xy dng mt biu thc Boolean tng ng chnh xc vi cc cng trong mch. Nhng nu
mch in s dng cc thnh phn khng phi l cng (nh multiplexer) n s bt ln mt hp
thoi cho bn bit khng th thu c biu thc Boolean, v thay vo Logisim s a ra nhng
biu thc da trn bng chn l.
Nhng hn ch
Logisim s khng pht hin cc mch tun t. Nu bn bt n phn tch mt mch tun t, n
vn s to ra mt bng s tht v biu thc Boolean tng ng nhng s khng chnh xc. V
th khng nn s dng ba bi h thng Phn tch tng hp. Ch s dng n khi bn chc chn
rng mch bn ang phn tch thc s l mch tng hp.
Logisim c th s lm nhng thay i khng mong mun vi mch in. H thng Phn tch
tng hp yu cu mi u vo v u ra c mt tn (gn nhn) duy nht m ph hp vi cc quy
tc t tn ca Java (mi k t phi l ch ci hoc s, v k t u tin phi l ch ci, khng
c c du cch gia cc k t). N s c gng s dng cc nhn ang tn ti ca cc cht, v
s s dng mt danh sch cc gi tr mc nh nu nhn khng tn ti. Nu mt nhn c t
khng hp l, Logisim s c gng trch ra mt tn hp l t nhn .

5.2 Sa i bng chn l


Mt ca s Combinational Analysis s bao gm 5 th

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

80

Phn ny miu t 3 th Inputs, Output v Table. Phn tip theo s tip tc miu t 2 th
cn li Expression v Minimized.
Th Inputs v Outputs
Th Inputs cho php bn xem v sa danh sch cc yu t u vo. thm u vo
mi, g n vo phn di cng ca ca s, v nhp vo Add. Nu bn mun i tn mt
u vo, chn n v nhp vo Rename.
loi mt input, bn nhp vo n v chn Remove. Bn cng c th sp xp li cc
u vo bng cch s dng nt Move Up hoc Move Down.
Mi vic lm tc ng n bng chn l ngay lp tc.
Th Output lm vic cng nh th Inputs, ngoi tr vic n lm vic vi cc yu t u
ra.
Th Table
Trong th ny ch c bng chn l hin thi, vi u vo to thnh cc ct bn tri v u
ra to thnh cc ct bn phi.
Bn c th chnh sa cc gi tr hin ti xut hin trong cc ct u ra bng cch nhp
vo gi tr ca u vo.Cc gi tr s xoay vng xung quanh 0, 1 v x (ngha l khng
quan tm). Chng ta s thy trong cc phn tip theo, bt k gi tr khng quan tm
no cng s cho php tnh ton cc biu thc rt gn linh hot hn.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

81

Bn cng c th iu hng v chnh sa bng chn l bng cch s dng bn phm. V


bn c th sao chp v dn gi tr s dng clipboard.
Nu bn chn l da trn mt mch hin c, bn c th thy mt s hnh vung mu
hng trong cc ct u ra vi du "!!" trong . Nhng du ny tng ng vi cc li
xy ra trong khi tnh ton gi tr cho hng . Tuy nhin khi di chut ln cc mc s
hin ra mt dng c miu t l li g. Sau khi click vo mc li, bn s trong chu k
0-1-x; khng c cch no tr li.

5.3 To cc biu thc


i vi mi bin u ra,, ca s phn tch tng hp duy tr 2 cu trc: ct lin quan ca bng
chn l v mt biu thc boolean xc nh mi u ra lin quan n cc u vo ca n nh th
no. Bn c th chnh sa bng chn l hoc biu thc boolean, khi chnh sa 1 ci, ci cn li s
t ng chnh sa theo m bo nht qun.
Th Expression

Th Expression cho php bn xem v chnh sa cc biu thc lin kt vi mi bin u ra. Bn
c th chn biu thc u ra bn mun xem v chnh sa bng cch s dng b chn c nhn
"Output:" trn cng ca ca s.
Biu thc s hin ra vi nhng k hiu rt thng dng. Php OR s c biu th bng php
cng, php AND s c biu th bng php nhn, php NOT c biu th vi du gch ngang
trn u cc bin.
Khung bn di s hin thng tin tng t nhng di dng m ASCII. y php NOT c
biu th bng du ng ~
Bn c th chnh sa cc biu thc trong ca s vn bn v bm nt Enter lm cho n c hiu
lc; bng chn l cng s c cp nht theo. Nt Clear xa ton b khung vn bn, nut Revert
khi phc khung tr li biu thc tng ng vi biu thc boolean hin ti.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

82

Ngoi ra bn cng c th s dng cc ton t ca C/Java biu th cc php ton AND, OR:
Php ton c u tin nht

~!

NOT

(none) & && AND

Php ton c u tin thp nht

XOR

+ | ||

OR

Cc cch din t sau y u ng cho cng 1 biu thc boolean. Bn c th kt hp


cc ton t
~a (b + c)
!a && (b || c)
NOT a AND (b OR c)
Th Minimized

Th Minimized hin th cc biu thc rt gn lin quan n mt ct ca bng chn l. Bn c th chn


xem biu thc rt gn ca cc output bng b chn u trang..
Nu c nh hn 5 bin u vo, mt bn Karnaugh s hin ra . Bn c th nhp vo bng thay i
gi tr ca bng chn l.
di bn chnh l biu thc boolean ca bin u ra, hin th nh trong th Expression. Nu c
nhiu hn 4 bin u vo, bn Karnaught s khng hin ra, nhng biu thc rt gn vn c tnh
(Logisim s dng thut ton Quine-McCluskey tnh biu thc rt gn).
Nt Set As Expression cho php bn chn biu thc rt gn cho cc bin. Nt ny thng l khng cn
thit, v s dng th Expression s thun tin hn.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

83

5.4 To mch
Nt Build Circuit s xy dng mt mch c cc cng tng ng vi cc biu thc c chn
cho mi u ra. Cc cng u vo v u ra s hin th ng theo th t t trn xung di nh
trong th Inputs v Outputs. Ni chung, cc mch c xy dng s rt p; qu tht vy, mt
trong nhng ng dng ca m un Phn tch tng hp l thit k li cc mch v xu.
Khi bn bm vo nt Build Circuit, mt hp thoi s xut hin cho bn chn nhng project m
cn mch v tn m bn mun t cho n. Nu bn s dng tn ca mt mch tn ti th
mch c s b thay th (sau khi Logisim hi bn c mun thay th khng)
Hp thoi Build Circuit c 2 mc m bn c th chn. Mc Two-Input Gates Only ch nh
bn mun tt c cc cng u c 2 u vo (ngoi tr nhng cng NOT). Mc Use NAND
Gates Only th hin bn mun xy dng mt mch ch gm ton cc cng NAND. Bn c th
chn c 2 mc. Nhng Logisim khng th xy dng mt mch ton cng NAND vi nhng biu
thc c ton t XOR. Khi mc Use NAND Gates Only s b cm.

6. GII THIU CC MENU


Phn ny s trnh by v 6 menu chnh ca Logisim
Menu File
Menu Edit
Menu Project
Menu Simulate
Menu Window
Menu Help

6.1 Menu File


New
M ra mt project mi trong mt ca s mi. Project s c khi to nh mu ang
c chn

Open ...
M mt project tn ti trong mt ca s mi.
Close
ng tt c cc ca s lin quan n project ang c xem
Save
Lu li project ang c xem ( ghi ln file c)
Save as...
Lu project ang c xem thnh mt file khc (khng ghi ln file c)
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

84

Export Image..
To ra file nh tng ng vi mch.
Print...
In mch.
Preference...
Hin th cc ca s ng dng u tin. (trong h iu hnh Mac OS, n s xut
hin trong menu Logisim)
Exit
ng tt c cc project v thot khi Logisim (trong h iu hnh Mac OS, n s
c tn l Quit trong menu Logisim)

6.2 Menu Edit


Undo XX
Hy cc thao tc c thc hin gn y nht. Lu rng n khng bao gm cc thay
i lin quan n trng thi ca mch (nh cc thao tc c thc hin bi cng c
Poke)

Cut
Loi b cc thnh phn ang c chn t cc mch vo clipboard ca Logisim.
Lu : Clipboard ca Logisim hon ton ring bit vi clipboard ca h thng
tng th. V th nn cc thao tc ct / sao chp / dn s khng lm vic trn cc
ng dng khc, thm ch c cc bn Logisim khc ang chy. Nhng nu bn
ang c nhiu project ang m di cng mt Logisim, bn hon ton c th ct /
sao chp / dn gia cc project .
Copy
Sao chp cc thnh phn ang c chn trong mch vo clipboard ca Logisim.
(cc lu nh trong mc Cut)
Paste
Dn cc thnh phn trong clipboard ca Logisim n phn ang c chn (cc
lu nh trong mc Cut).
Delete
Xa b hon ton cc phn ang c chn trong mch, v khng a n
clipboard.
Select All
Chn ton b cc thnh phn trong mch hin ti

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

85

6.3 Menu Project


Add Circuit...
Thm mt mch mi vo project hin ti. Logisim s ngh bn t tn cho mch, tn
khng c trng vi bt k mch no trong project.

Load Library
Ti mt th vin vo project. Bn c th 3 loi th vin ( cp n trong mc
khc)
Unload Libraries...
G b cc th vin hin ti trong mch, Logisim s khng cho php bn g bt c
th vin no ang c dng.
Analyze Circuit
Xy dng bng chn l v cc biu thc boolean tng ng vi mch hin ti,
hin th chng ca s Phn tch tng hp. Qu trnh phn tch ch thc hin
c cho nhng mch tng hp. Mt bn m t y ca qu trnh phn tch s
c hin th trong bng Phn tch tng hp.
Rename Circuit...
i tn mch ang c hin th.
Move Circuit Up
Chuyn mch ang c hin th ln mt dng trong danh sch cc mch ca
project ca s explorer.
Move Circuit Down
Chuyn mch ang c hin th xung mt dng trong danh sch cc ch ca
project ca s explorer.
Set As Main Circuit
Thip lp mch ang c hin th tr thnh mch chnh trong project (menu ny
s b kha nu mch hin ti l mch chnh ri). S khc bit duy nht ca
mch chnh l n s l mch c hin th u tin khi mt project c m.
Remove Circuit
Xa b mch ang c hin th khi project. Logisim s khng cho bn g b
nhng mch ang c s dng nh nhng mch con ca cc mch khc, v n
cng s khng cho bn xa b mch in cui cng cn li trong project.
Show Project Toolbar
Khi c nh du, n s hin th mt thanh cng c nh pha trn ca s
explorer, cho php ngi dng d dng thc hin cc thao tc vi cc mch nh:
thm, i tn, sp xp li v xa b mt mch t project.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

86

Options...
M ca s cc ty chn ca project (Project Options).

6.4 Menu Simulate


Simulate Enabled
Nu c nh du, cc mch in s chy (live). Mc ny s t ng loi b nh
du nu pht hin s dao ng trong mch.

Reset Simulation
Xa mi th trong trng thi hin ti ca mch, n nh l bn mi m li 1 file.
Step Simulation
Thc hin bc tip theo trong b m phng.
Go Out To State
Khi bn kim tra k lng trng thi ca mt mch con thng qua menu pop-up
ca n, mc ny s lit k cc mch trn mch ang c xem.
Go In To State
Nu bn tng kim tra k lng trng thi ca mt mch con, ri sau mun
quay li mch . Menu ny s lit k tt c nhng mch ph ca mch hin thi.
Tick Once
Menu ny s lm cho ng h chy tng bc mt. N rt l hu dng khi bn
mun chy ng h bng tay, c bit l khi ng h khng thuc cng mch m
bn ang x l
Tick enable
Khi ng ng h chy t ng. Menu ny ch chy c khi trong mch c
thit b ng h (trong th vin Base)
Tick Frequency
Cho php bn chn tn s tick. V d, 8 Hz ngha l ng h s tick 8 ln trong 1
giy. Tick l n v o tc ca ng h.
Lu rng tc chu k ng h s chm hn so vi tc tick.
ng h nhanh nht c th s c mt chu k 1 tick ln v mt chu k 1 tick xung.
ng h s c chu k ln/xung l 4Hz nu tc ca ng h l 8 Hz
Logging...
Vo m un ng nhp

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

87

6.5 Menu Window


Minimize
Thu nh ca s hin thi.
Maximize (Zoom trn MacOS)
Phc hi kch c ca ca s.
Combinational Analysis
Hin th ca s Phn tch tng hp.
Individual window titles
Hin th ca s tng ng ln pha trc.

6.6 Menu Help


Tutorial
M h thng hng dn trc tuyn, phn Hng dn cho ngi mi bt u trong mc
Hng dn s dng Logisim.
User's Guide
M h thng hng dn trc tuyn, mc Guide to Being a Logisim User.
Library Reference
M h thng hng dn trc tuyn phn Th vin.
About ...
M ra mt ca s ghi phin bn. (Trong h iu hnh Mac OS, mc ny trong menu
Logisim) .

7. CC THNH PHN CA B NH
Thnh phn RAM v ROM l 2 thnh phn hu dng nht trong th vin tch hp ca
logicsim. Tuy nhin, do s lng thng tin m n c th lu tr, chng cng l 2 thnh
phn phc tp nht.
T liu v c ch hot ng ca chng trong mch c th tm thy trong mc RAM v
ROM ca library references. Mc ny ca users guide gii thch v giao din cho php
ngi s dng quan st v chnh sa ni dung b nh.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

88

7.1 Truy cp b nh
Bn c th iu khin b nh bng cng c Poke, nhng giao din cho n cn mt vi
hn ch bi khng gian lm vic: cho nhng chnh sa n gin nht, bn s thy the
intergrated hex editors thun tin hn rt nhiu.
Tuy nhin, quan st v chnh sa trong mch, cng c Poke c 2 ch hot ng:
bn c th chnh sa a ch hin th, v bn c th chnh sa cc gi tr n l.
chnh sa a ch hin th, click vo vng ngoi hnh ch nht. Logicsim s v mt
+ g cc ch s ca h 16 s thay i cc a ch top tng ng .
+ g Enter s xung mt dng
+ g backspace s ln mt dng
+ g spacebar s cun xung 1 trang (4 dng)
chnh sa mt gi tr c th, click vo gi tr trong vng ch nht hin th.
Logicsim s v mt hnh ch nht xung quanh a ch .
+ g cc ch s ca h 16 s thay i gi tr a ch ang c chnh sa.
+ g enter s chuyn ti chnh sa gi tr tip theo ngay di n (xung mt
dng).
+ g backspace s chuyn ti chnh sa gi tr ca a ch trc .
+ g spacebar s chuyn ti chnh sa gi tr ca a ch k tip.

7.2 Pop-up menus and files


Mt trnh n bt ln cho b nh gm c thm 4 la chn bn cnh cc la chn thng
thng cho tt c cc thnh phn.
+Edit content: a ra mt trnh son tho h 16 chnh sa ni dung b nh
+Clear content: xc lp li gi tr ca tt c cc nh v 0.
+Load Image: thit lp li tt c cc gi tr ca phn b nh da trn cc gi tr
c tm thy trong mt tp s dng khun thc s c din gii di y.
+ Save Image: Lu tr tt c cc gi tr ca b nh vo mt tp s dng khung
thc nh di y.
Cc nh dng tp s dng cho cc tp nh rt n gin, n cho php bn vit mt
chng trnh, nh mt chng trnh assembler, to ra cc b nh nh m c th sau
truyn vo trong b nh. Mt v d ca khun thc ny: nu chng ta c mt b nh 256
bytes m 5 bytes u l: 2, 3, 0, 20 v -1 v tt c cc gi tr cn li bng 0 th chng ta
s c mt tp nh nh sau:
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

89

V2.0 raw
02
03
00
14
ff
dng u tin xc nh khung thc tp ang c s dng (hin ti, ch mt nh dng
tp c tm thy). Cc gi tr tip theo lit k cc gi tr trong h 16, bt u t a ch
0, bn c th t vi gi tr nh th vo cng mt dng. Logicsim s t cho rng, cc gi
tr ko c lit k bng 0.
Tp nh c th s dng run-length encoding, v d thay v lit k gi tr 00 16 ln trong
mt hng, tp c th truyn vo 16 * 00 thay v lp li 00 mi su ln. Ch rng s
ln lp li c vit trong h c s 10. Tp c to ra bi logicsim s s dng runlength encoding chy qua t nht 4 gi tr.

7.3 Hex editor


Logicsim bao gm mt hex editor tch hp theo di v chnh sa ni dung b nh.
s dng, chn th memory trong giao din, chn edit contents i vi thnh phn
ROM, bn c th truy cp hex editor bng cch click vo cc gi tr tng ng.

Nhng s in nghing nm ct ngoi cng bn tri, hin th gi tr a ch ca b nh,


vit trong h 16. Cc s khc hin th cc gi tr bt u t gi tr nh , hex editor c
th hin th 4, 8 hoc 16 gi tr trn mt dng, ph thuc vo kch c ca ca s. tin
cho vic m, gia nhm 4 gi tr c mt khong trng ln ngn cch.
Bn c th di chuyn n cc gi tr bng thanh cun hoc s dng cc phm di chuyn
thay i gi tr ca nh bng cch g vo cc gi tr h 16.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

90

Bn c th chn mt vng cc gi tr bng cch ko th chut, shift-clicking hoc gi


shift khi dng phm di chuyn. Cc gi tr c th c sao chp v dn bng la chn
edit. Bng ghi gi tr ny c th c chuyn sang cc ng dng khc.

8. LOGGING
Khi th mt mch in ln v phc tp, i khi bn cn lu li cc trng thi hot ng
ca n. y l mc ch thit lp nn ca ch logging trong logicsim, cho php ngi
s dng chn cc thnh phn m gi tr ca chng nn c ghi li. Mt cch ty , bn
c th chn mt tp lu cc gi tr ghi .
Ch : y l giai on quan trng nht, tuy c phn nhm chn nhng n rt thun tin
trong vic chnh sa sau ny. Nu ngi s dng khng chn thm cc comments th bn
ghi s khng thay i.
Bn c th vo ch logging qua menu Simulate trn khay h thng. Mt khay h
thng gm 3 th hin ra.

Mi project ch c mt ca s logging. V vy, khi ngi s dng chuyn n mt mch


khc trong cng mt project, ca s logging s t ng chuyn sang ch logging ca
mch .

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

91

Ch khi ch logging chuyn sang ghi chp cho mt m phng khc, n s kt thc
v ghi vo mt tp. Khi bn quay tr li, n s ghi nh cu hnh ca m phng , nhng
ngi s dng s phi khi ng li ch logging ny.

8.1 Th la chn (the selection tab)


Th slection cho php ngi s dng chn gi tr no ghi vo bn log. Ca s di
y tng ng vi mch sau
.

Th selection c chia lm 3 vng lm vic: vng u tin (ngoi cng bn tri) lit k
tt c cc thnh phn trong mch m gi tr ca chng c th c ghi li vo log. Trong
cc th vin tch hp sn, cc loi thnh phn sau c th c logging:
Th vin c s: Pin, Probe v thnh phn Clock.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

92

Th vin b nh: tt c cc thnh phn


i vi cc thnh phn c nhn i cng th tn ca chng tng ng vi cc nhn ; tn
ca cc thnh phn khc c trng cho loi ca chng v v tr ca chng trong mch.
Cc mch con cng hin tn trong ct ny, chng khng th b ghi li, nhng cc thnh
phn thch hp bn trong chng th c th. Ch rng cc thnh phn RAM yu cu
ngi s dng chn a ch phn b nh nn c ghi li, n cho php ghi li cho ch
256 a ch u tin.
Vng ngoi cng bn phi lit k cc thnh phn c la chn. N cng ch ra c s
m cc gi tr a bit c ghi vo, c s ny khng c tc dng c th i vi cc gi tr
n bit.
Ct gia gm cc nt cho php iu khin cc mc trong ct selection
Add: thm cc mc ang c chn trong ct tri vo ct phi
Change radix: thay i cc c s ca cc thnh phn trong ct phi gia cc h:
nh phn, thp phn v 16
Move up: di chuyn ln
Move down: di chuyn xung
Remove: xa thnh phn ang c chn khi ct phi

8.2 Th table

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

93

Mi thnh phn trong ct selection s c mt ct tng ng. Mi hng hin th mt


snapshot sau khi s truyn gi tr c thc hin. Cc dng ging nhau s ko c thm
vo trong log. Ch rng ch c khong 400 hng c hin th. Mt s hng c th c
cc phn trng nu cc thnh phn tng ng khng nm trong vng la chn khi m
hng c tnh ton.

8.3 Th tp
Th tp cho php ngi s dng xc nh mt tp lu cc log vo

Trn cng l mt ch th cho bit vic lu log vo file c ang c thc hin hay
khng v mt nt cho php bt hoc tt n. (ch rng ngi s dng khng th enable
n cho n khi mt file c xc nh pha di.) Nt cho php ngi s dng tm
dng v khi ng li vic ghi chp. Khi ngi s dng chuyn vo ca s ca project
quan st s gi lp khc, qu trnh log s t ng dng li; nu ngi s dng quay li
v mun tip tc log, h phi thit lp li bng tay s dng nt trn cng.
gia l ch th cho bit tp no ang c ghi vo. thay i n, s dng nt
Select. Khi chn mt tp, ch logging s c t ng khi ng. Nu chn mt tp
c sn, logicsim s hi nu ngi s dng mun ghi ln hay m rng tp v pha
cui.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

94

di cng ngi s dng c th iu khin mt dng tp header c nn t vo


trong mt tp chi ra mc no c chn hay khng. Nu header c thm vo, mt
dng header mi s c t vo tp ngay khi cc mc thay i.
nh dng tp
Cc ghi chp c t vo trong tp di hnh thc gn ging vi nhng g hin
ln trong th Table. (Mt im khc l bt c header lines no s cha ng dn ti cc
i tng nm trong cc mch ph.) nh dng ny c thit k n gin ngi s
dng c th a n vo trong cc chng trnh khc x l, nh l Python/perl hoc
cc chng trnh bng tnh.
V th cc bn ghi c th x l tp cng lc khi logicsim ang chy, logicsim s
np bn ghi mi vo a cng sau mi 500ms. Ch rng Logicsim cng c th ng
mt cch gin on hoc m li cc tp trong thi gian chy, c bit khi mt vi giy
tri qua m khng c thm bn ghi no c np vo.

9. APPLICATION PREFERENCES
Logisim h tr hai loi ty chn cu hnh l application preferences v project options.
Application preferences hin th tt c cc project ang m cn project options ch lm
vic vi mt project c th. Phn ny s ni v application preferences cn project
options s c ni ti trong phn khc
Bn c th xem v chnh sa application preferences bng cch vo FilePreferences.
Mt ca s s hin ra vi hai th(tab). Chng ta s gii thiu tng th mt v sau tm
hiu cch cu hnh t dng lnh.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

95

9.1 Th Template

Mt mu l mt file ca logisim m c khi ng mi khi to ra mt project mi.


Ngoi ra, nu bn c sn mt file logisim vi mi trng lm vic c chnh sa,
bn c th s dng nt Revert All to Template a v mc nh trong ca s sa
Project Options
Mc d nhng mu rt hiu qu khi s dng nhng trng hp khc, chng hp l nht
khi s dng trong lp hc, ni m nhng hng dn vin c th a cho sinh vin nhng
mu bt u lm vic. Vic ny c bit thch hp nu lp hc s dng logisim mt
cch thng xuyn vi cc tnh nng nng cao. Trong trng hp , thit lp mc nh
t ra khng hiu qu. Mu cng c th dng trong lp khi m hng dn vin cho php
sinh vin np bi m h t thit lp mi trng lm vic
Mc nh, ty chn Plain Template s c chn, s dng mu mc nh ca logisim.
Nu bn mun mt thit lp c bn nht, bn c th chn Empty Template. Nhng nu
bn mun mt file khc s dng mu, chn Select v chn mu sau chn Custom
template.

9.2 Th International
Thit lp ny h tr ty chn Logisim c th s dng c nhiu nc

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

96

Th ny c ba la chn:

Hnh dng cng: logisim h tr ba chun v cng: cng nh hnh dng, cng
dng ch nht, v cng kiu DIN 40700. Bng sau y th hin s khc bit gia
chng

Bi v hnh dng nh sn th ph bin M trong khi kiu dng hnh ch nht th li


ph bin Chu u, mt s ngi quy nh nhng kiu ny theo vng ca h. Bi vy,
t shaped(hnh dng nh sn) v rectangular(hnh ch nht) c a thch dng. Chun
DIN 40700 l chun dng cho bin tp ni dung tng t (analog) v ni dung s
(digital) c a ra bi t chc chun ca c tn l DIN. DIN a ra chun hnh ch

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

97

nht cho cc thnh phn s vo nm 1976 nhng mt s k s vn thch dng nhng kiu
c hn nhng s ny ngy cng t i.
Logisim khng tun theo cht ch mt chun no. N i theo hng c th chuyn i
gia cc chun. Mt s trng hp, cng c hnh dng sn th thng vung hn kch
thc c nh ra bi chun IEEE. V, mc d cng XOR v XNOR cn phi c chiu
rng ging vi cng OR v NOR vi kiu hnh ch nht. Chng khng c to ra nh
th v s kh khn trong vic to ra hnh dng ca cng XOR.
Hin nay, cng OR ch nht thng c v vi mt k hiu >0 hn l k hiu chun
c cp phn trn bi v rt nhiu h thng khng h tr y b m Unicode.
Ngn ng: Thay i gia cc ngn ng. Phin bn hin ti h c Ting Anh v ting
Ty Ban Nha. Phn dch sang ting Ty Ban Nha c ng gp bi Pablo Leal Ramos,
Ty Ban Nha.
Chng ti hoan nghnh tt v mi ngi dch logisim sang cc ngn ng. Nu bn thy
thch th vi vic ny, hy lin h vi ti, Carl Burch. Ti s thng bo cho bn vic
phi lm, gi cho bn hng dn v vic ny khng i hi hiu bit v ngn ng JAVA.
Thay i cc k t: Mt s h thng h tr khng tt cho cc k t (nh hoc ) m
khng c trong b m ASCII 7 bit. Khi vic ny c kim tra, logisim s thay th tt c
nhng k t trn vi nhng k t tng ng ca b m ASCII 7 bit. Phn nh du c
n v hin ny ngn ng hin ti khng c mt d bn no khc.

9.3 Th Experimental
Nhng thit lp ny lin quan n nhng tnh nng th nghim m c a vo da trn
nhng phn hi ca ngi dng.

Tng tc ha: Mt s ngi s dng logisim phn nh rng Logisim x l


ha tng i chm. Mt ngi dng tin hnh thm lnh Dsun.java2d.d3d = true
trong phn dng lnh ch ra r ra iu ny. Bn c iu khin vic ny bng

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

98

cch s dng hp thc n s xung. Ti cha tng xem xt vn tc ca


logisim, v th khng th nh gi mt cch chnh xc c. Ti tin tng vo
nhng phn hi ca ngi dng v vic ny. Mt iu lu rng n khng c tc
dng khi bn cha khi ng li logisim.
Ko di dy ni: Khi cc thnh phn c di chuyn theo chiu ngang hoc dc.
Logisim t ng thm dy ni bo ton s kt ni. Nhng phin bn trong
tng lai c th t thuc tnh ny l mc nh m khng th tt i c nhng ti
mun cho ngi dng c hi th v xut kin v n.

9.4 Ty chn Command-line


Bn c th thit lp phn application preferences thng qua dng lnh. Vic ny thc s
hiu qu khi bn mun khi ng logisim vi thit lp ging nhau cho mi sinh vin
ngay c khi cc sinh vin trc thay i mt s thit lp.
C php ca vic thit lp bng dng lnh nh sau:
java -jar jarFileName [options] [filenames]
java -jar jarFileName [thit lp] [tn file]

Vic thm file vo dng lnh s c m bi nhng ca s khc nhau trong logisim.
V d sau y m t vic bt Logisim vi nhng thit lp c bn
java -jar jarFileName -plain -gates shaped -locale en

Cc ty chn h tr

-plain
-empty
-template

templateFile

Thit lp cc mu dng logisim


-gates

[shaped|rectangular]

Thit lp dng cng c dng.


-locale

localeIdentifier

Thit lp ngn ng c dng. y h tr hai loi l ting Anh v Ty Ban Nha

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

99

-accents

[yes|no]

Ty chn ny ch c dng cho nhng ngn ng s dng k t ngoi bng m 7


bit ASCII. Nhng k t ngoi bng m s c thay th bng nhng k t tng
ng. iu ny rt thun li cho nhng h thng khng h tr cc loi k t ny.
-nosplash

Tt ca s hin th ang m Logisim khi bt u khi ng


-help

Hin th tng qut v cc ln trong phn thit lp dng lnh


-version

Hin th phin bn ca logisim

10. PROJECT OPTION


Bn c th xem v chnh sa phn project option bng cch vo ProjectOption

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

100

di cng l nt lnh Revert All to Templete a tt c cc thit lp v thuc tnh


v mu hin ti

10.1 Th Canvas
Th Canvas cho php thit lp cc thng s cho vng v mch.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

101

C tm la chn:

Printer View: Xc nh xem mch c c hin th trn mn hnh ging nh qua


my in khng. Thng thng, Logisim hin th mch trn mn hnh vi ch dn
bit trng thi ca mch v n cng hin th mt vi hng dn v giao din cc
thnh phn. Cn my in thng b qu nhng ch dn v trng thi v nhng ch
dn v giao din cc thnh phn.
Show Grid: Xc nh xem c hin th cc du chm trn nn khu vc v hay
khng.
Show Attribute Halo: Xc nh xem c hin th hnh ovan xung quanh cc thuc
tnh hay cng c m ang cc thuc tnh ca n ang c hin th bng thuc
tnh.
Show Ghosts: Xc nh xem vin mu xm c c hin th quanh cc thnh
phn khi di chut qua vng v mch. V d, nu bn chn cng AND v di chut
vo ca s nhng khng click, mt vin mu xm ca cng AND s xut hin.
Show component Tips: Xc nh c hin th tool tips tm thi khi chut di qua
cc thnh phn ca mch.
Zoom Factor: cho php bn phng to hay thu nh hnh nh bi mt t l no .
First Radix When Wire Poked: thit lp cc gi tr s c hin th nh th no
khi mt dy ni c chn s dng cng c Poke. Khi c chn, cc gi tr s
c hin th tm thi cho n khi ngi dng click chut vo vng khc.
Second Radix When Wire Poked: Thit lp phn th hai ca gi tr s c hin
th nh th no.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

102

10.2 Th Simulation
Th Simulation cho php thit lp cc thut ton cho vic vic gi lp cc mch. Cc
tham s c p dng cho tt c cc mch ang c gi lp trong cng mt ca s,
ngay c khi cc mch tn ti mt th vin khc trong project.

Add Noise To Component Delays: cho php bn bt hoc tt cc nhiu ngu


nhin m c thm vo s tr ca cc thnh phn. S m phng bn trong s
dng mt ng h n cho s gi lp ny, cho thc t, cc thnh phn(tr dy
ni v b chia) u c mt tr nht nh gia vic chng nhn input v tr ra
output. Nu thit lp ny c chn, Logisim s thng xuyn to ra cc thnh
phn nhn tn hiu click chut chm hn mt cht. S ngu nhin ny c thm
vo gii quyt vn ca mch cht. Nu khng c nhiu ngu nhin, mch
s dao ng khi cng lm vic nh nhau. Nhng khi nhiu ngu nhin c thm
vo, mt cng s lm vic nhanh hn cng cn li.

Ti khuyn co nn bt thit lp ny. V s thm vo nhiu ny l tng i


mi v vy chng c th dn n mt s li trong khi gi lp mch.
-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

103

Iterations Until Oscillation: Cho php bn thit lp thi gian bao lu m


phng mch trc khi quyt nh n ang dao ng. S trong hp m t s lng
clicks ca ng h n bn trong( cng bnh thng ch cn mt click). Con s mc
inh l 1000 l tt cho hu ht cc mc ch ngay c khi mch l ln. Nhng
bn c th tng con s ny ln nu bn ang lm vic vi mt mch m Logisim
bo l dao ng b sai. C th tng tng rng mt mch l kt hp ca cch
mch cht c th to ra li. Bn cng c th phi gim con s ny xung khi bn
lm vic vi mt mch m c xu hng dao ng v bn ang s dng mt b x
l chm chp.

10.3 Th Toolbar
Th Toolbar cho php bn thit lp nhng cng c s xut hin trn thanh cng c.

Bn tri l mt ca s lit k tt c cc cng c, v danh sch bn phi l nhng cng c


hin ang c hin th trn thanh cng c. --- l k hiu ca du ngn cch hin th
nh mt khong trng nh. gia l nm nt bm chn l mt thc n s xung:

Add Tool: Thm cng c ang c chn ca s bn tri vo cui thanh cng
c
Add Separator: Thm du ngn cch vo cui thanh cng c.
Move Up: chuyn cng c ang c chn ln mt v tr trong thanh cng c
Move Down: Chuyn cng c ang c chn xung mt v tr trong thanh cng
c

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

104

Remove: Xa cng c c chn khi thanh cng c


Location: Thit lp v tr ca thanh cng c trong ca s logism. Thanh cng c
c th t mt trong bn vin ca ca s lm vic c k hiu l Bc, Nam,
ng, Ty. Chng cng c th t thuc tnh n hoc c th t gia tc l
bn tri ca khu vc v nhng bn phi ca ca s cc i tng v bng thuc
tnh.

Cc thuc tnh ca cc cng c khng c hin th trong ca s ny, lm vic ,


bn c th xem v sa n trong ca s chnh ca chng trnh.

10.4 Th Mouse
Mc nh, khi bn click chut vo khu vc v ca Logisim, cng c ang c chn s
c s dng. Nu bn click chut phi hoc phm iu khin, mt ca s cng c s
hin ln cho nhng thnh phn hin ti ang bn di tr chut.
Logisim cho php bn thay i thit lp ny, bn khng phi dng ti thanh cng c
hoc ca s cha cc thnh phn nhiu ln.(iu ny rt thun tin nu bn thun tay
tri). Mi mt t hp ca phm chut v mt phm iu khin (Shift,Control) s c
thay th cho mt cng c khc nhau. Th mouse cho php bn thit lp cc thay th ny.

bn tri l mt ca s ni bn c th chn cc cng c bn mun thay th bng.


pha trn bn phi l mt hnh ch nht, bn click vo s dng t hp
chut, phm thay th cho mt thnh phn. V d, bn mun to mt dy ni mi

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

105

bng vic s dng cch gi phm shift, u tin bn chn cng c Wiring trong
phn ca s bn tri; sau bn click + shift vo dng ch Click Using
Combination to Map Wiring Tool. Nu t hp phm chut bn chn c s
dng, khi n s thay th cho cc trc .
Bn i khu vc ny l danh mc cc thnh phn c dng t hp chut v
phm ny. Lu rng bt c t hp no m khng c lit k s c dng bnh
thng bng cch chn.
Bn di l mt nt bm Remove cho php bn xa t mt t hp phm chut
ang c chn bng lit k pha trn. Trong tng lai, t hp chut phm s c
th thay th cho bt k cng c no ang c chn thanh cng c hay ca s
cha cc thnh phn.
Bn di l danh sch ca cc thuc tnh ca cng c ang c chn trong danh
sch ca cc t hp c to. Mi t hp ny c mt thuc tnh ring, khc vi
thuc tnh c s dng trn thanh cng c v ca s cha cc thnh phn. Bn
c th thay i cc thuc tnh y.

11. S TRUYN GI TR
Thut ton ca Logisim dng cho vic m phng s truyn i ca cc gi tr trong mch
him khi lm bn phi lo lng. Chng phc tp c th m t s tr ca cc cng,
nhng khng thc t c th m t nhng hin tng kh chng hn nh s thay
thay i thng xuyn in p.

11.1 S tr ca cng
Di y l mt v d cho thy s tinh vi ca thut ton s dng trong logisim.

R rng rng output lun l 0. Nhng trong thc t cng NOT khng p ng ngay lp
tc khi nhn c input, v cng nh vy trong Logisim. Do vy, khi input ca mch
chuyn t 0 sang 1, cng AND s nhn hai input l 1 v do s tr ra output l 1 trong
mt khong thi gian ngn. Bn khng nhn thy iu trn mn hnh nhng kt qu
ny c th thy r qua vic s dng output ca cng AND lm input cho ng h ca
mt flip-flop D.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

106

Khi output ca cng AND xut hin s ngay lp tc i vo flip-flop D. Do , gi tr sau


khi qua flip-flop D s thay i mi ln output ca cng AND chuyn t 0 sang 1.
Mi thnh phn u c s tr bn trong. Cc thnh phn phc tp trong Logisim thng
c tr ln hn. Tuy nhin tr mt phn no khng bit trc c do c th
khng din t ng so vi trong thc t.
Thnh thong, vi tn s khng u, Logisim s thm tr vo s x l ca ca mt
thnh phn. Vic ny l m phng s khng u trong mch thc. Trng hp c
bit, mt cht R-S x dng hai cng NOR s hot ng m khng cn n s tr ngu
nhin v hai cng ny x l input cng mt thi im. S thm tr ny c th thay
i th Simulation trong Project Options.
ng t gc k thut, khng kh x l vn tr trong cc mch n. X l vn
tr ca cng trong mt mch con phc tp hn mt cht. Logisim ang c gng
din t mt cch chnh xc nht.
Lu rng ti khng ni v vic Logisim lun lun lun m t ng s tr ca cc
cng. Nhng t nht Logisim s c gng mt cch tt nht c th.

11.2 Li dao ng
Thut ton truyn i, thng lm vic mt cch hiu qu m khng xy ra li, s tr nn
d thy hn khi bn to mt mch v cho n dao ng.

Mch ny ang trng thi khng thay i( tnh). Nhng nu bn i input sang 1, mch
s to ra mt vng lp v hn. Sau mt thi gian, Logisim s thng bo rng mch ny
ang dao ng.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

107

N s hin th gi tr thi im Logisim dng chy mch. Gi tr ny(trong hnh v) c


th sai. Cng AND cho ra ouput 1 mc d mt input ca n l 0 nhng n c th do cng
NOT c input v output u l 1.
Logisim khoanh trn bng mu ni m c th to ra s dao ng. Nu mt im
c nh du nm trong mt mch con, Logisim s v mch con trong vin mu .
Khi Logism pht hin ra s dao ng, n s tt ton b s m phng. Bn c th bt li
s m phng bng cch bt thit lp Simulation Enabled trong thc n Simulate.
Logisim pht hin s dao ng bng mt cch tng i n gin. Nu mch m phng
c nhiu th c lp li, chng s dng li vo thng bo dao ng. (Nhng im m
Logisim pht hin ra l tham gia vo s dao ng l nhng im m c chy qua trong
25% cui cng ca s lp li). V vy, n c th nhm ln trong vic bo c s dao ng,
c bit khi bn lm vic vi mt mch rt ln. Tuy nhin c l phi l mt mch ln
hn tt c cc mch m ti xy dng bi logisim. Trong bt c trng hp no, nu
bn chc rng thng bo l khng ng, bn c th thit lp li s vng lp li trc
khi s dao ng xy ra th Simulation trong Project Options.

11.3 Hn ch
Thut ton truyn tin ca Logisim phc tp cho cc mc ch v dy v hc nhng
khng phc tp cho vic ch to mch trong cng nghip. S thiu st ca thut ton
ny th hin nhng im sau:

Logisim khng th m phng c cc mch con m cc chn c th va lm


input va lm output. Cc thnh phn c xy dng bi Java c th c cc chn
nh vy: Trong th vin c sn, th vin b nh mch RAM c mt chn D m
c th va lm input va lm output.
Logisim dng s m phng li khi s lp li vt qu mt con s nh sn v
thng bo c s dao ng. C th thy rng, mt mch ln m nh vy cha phi
l dao ng s gp vn .

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

108

Ngoi vn v tr ca cng, Logisim khng quan tm n thi gian ca s


ca tr trong cc phn t. S tr ngu nhin ny trong mt s phn t c th
lm cho ging vi thc t hn nhng cha th m phng thc s ging vi thc
t.
Logisim khng phn bit s khc nhau gia cc mc in p: mt bt ch c th l
bt, tt, khng xc nh hoc b li.
Cn mt s thiu st na m ti b qua y v chng tng i kh hiu v nu
bn c hiu th Logisim cng s khng i theo hng khc phc n. V d, ti c
mt ngi bn lm vic cho mt cng ty chuyn sn xut chip, v cng vic ca
anh y l v cc bubbles trong chip theo cng ngh dy nano c th dn ti s
mt kt ni t ngt.
Ti khng phi l mt ngi thit k mch chuyn nghip, v vy c th c mt s
li trong phng php truyn ti d liu m ti cha bit. Ti rt mong c c
s ng gp ca nhng ngi chuyn nghip.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

109

PH LC B: P N MT S BI TP
(CH DNH CHO THY HNG DN THC HNH)

Bi s 5
1. Hy s dng cc cc phn t Hex Digit Display v Splitter c c di
dng s Hexa cc gi tr a vo ALU v kt qu nhn c u ra ALU.

-----------------------------------------------------------------------------------------------------------------------------------Gio trnh Hng dn thc hnh Kin trc my tnh, version-1.0

110

You might also like