卒業研究報告.PDF

Size: px
Start display at page:

Download "卒業研究報告.PDF"

Transcription

1 3 2 9

2 . 2. MOS 2. MOS LED i

3 4. 8bitCPU HDL 4.3. ALU 2 ALU ii

4 . 3 MOS MOS IC 8bitCPU 2. MOS 2. MOS MOS FET MOS FET 2. W L Tox Leff sub 2. MOS FET

5 MOS FET N MOS FET NMOS P MOS FET PMOS N NMOS P PMOS NMOS P PMOS N Al Poly-Si NMOS 0V 5V 0V P Vth 2.2 NMOS a Id Vgs Vds 2.2 2

6 a Id W Vds ( ) LTox 2 ox Id = Vgs-Vth Vds - 2 Vgs Vds Tox ox Vgs Vds 2 Vds Vgs-Vth Id a Vds > Vgs-Vth Id W ox Id = ( Vgs-Vth) 2 LT ox Id Vd 2.3 Tox Cs Cd Cs Vg-Vs-Vth Cd Vg-Vd-Vth Vs 0V Vg Vth Vd Cd Cd Cs Vd = Vg-Vth Vg Vs Vd + n + n p 2.3 3

7 Vd Vd Id 2.2 PMOS NMOS NMOS NMOS m Si s Ef Ec Ev Ei Metal SiO2 Si m s Ec Ef Ei Ef Ev 2.4 4

8 Metal SiO2 Si E a dox dsi Q b x E c x -dox -xo 0 xs dsi q Na dsi d ox si V d q Na d 2 si 2 si -dox -xo 0 xs dsi x 2.5 5

9 (Va) Q 2.5 a SiO2 Si b Si P dox SiO2 dsi Si Na SiO2 SiO2 Si E E Eox SiO2 Esi Si Q E= Q m E = ox ox Qm Si Qsi q Na dsi E ox= 2. ox 2.5 c E x xo -dox 0 xs 0 dsi SiO2 xo Si xs Esi Qsi E si = si q Na (dsi-x s) = 2.2 si x = 0 Eox Esi ox si SiO2 Vox Si Vsi -x 0 o ox ox ox 0 -xo V = - E dx = E dx q Na d 0 si = dx -x o ox 6

10 q Na d si = xo o ox x= d ox q Na d V ox= ox si 2.3 d ox 2.4 qna(d -x ) xs xs si o Vsi = - Edx si = - d dx si dsi xs q Na (dsi-x si ) = dx dsi xi qna = 2 si 2 si 2 (dsi x- x) qna = (d si - x s) 2 2 dsi xs q Na 2 2 = ( dsi- dsi x+ s x) s xs = 0 q Na dsi Vsi = dsi si si d 2.3 x = x = 0 (d,0) 2 2 x = 0 si 7

11 2.6 m s Ec Ef Ei Ef Ev dox dsi m s m< s 2.6 Vox Vsi s m 2.4 Ef Vox Vsi Va φ - φ = Va s m Va = φ φ 2.7 m s Va Si 2.7 = - V - y + Eg + 2 m s ox s p m- s +V ox+ ys- Eg - p = V ox+ y s= - m s + Eg + p) 2 8

12 s+ Eg + p) Si 2 V ox+ y s= - m+ s 2.9 ys 2.6 Vsi Metal SiO2 Si Vox s s m ys /2Eg Ec Ef p Ei Ef Ev dox dsi dsi Si ys Vg 2.8 m- s+v ox+ ys- Eg - p = Vg V + y = Vg - + ox s m s V + y = Vg - Va 2. ox s 9

13 2. Ei Ef P N y= 2φ 2.2 s p Vth dm V + 2 φ = V - Va ox p th d ox V th= Q + 2 φp + Va ox 2.2 q Na dm 2φ p = dm 2 si 2.3 d m = 4 si φ qna p Q Q = - q Na d = 4 q Na 2.4 m φp si 2.3 Vth d V = 4 φ q Na + φ - - E+ φ ox th p si m s g p ox 2 0

14 3. 3. LED 3.2 IC multisim multisim IC LED LED

15 LED 3.2 start stop reset LED multisim start stop clear S0 S S2 S3 S4 S

16 LED_a LED_d LED_b LED_g LED_e LED_c LED_f 3.4 LED S0 S2 S S0 LED S LED S2 LED S3 LED e start stop S0 S5 LED LED stop LED start stop reset stop LED S6 reset S6 LED LED 3.5 LED LED 3

17 start stop reset LED LED start stop reset st_sp zero C0 C C2 3 st_sp C2 zero C0 C0 Start C0 C2 C2 st_sp st_sp stop C2 st_sp S0 S5 stop C2 C0 st_sp 0 S0 S5 start C0 C2 S0 S5 C0 stop reset C0 C C zero LED LED LED C start C2 4

18 start stop reset start= start=0 start=0 stop=0 start= C C0 C2 reset= stop= reset=0 st_sp st_sp= S0 S S2 S3 S4 S5 st_sp=0 zero LED 3.5 LED C0 C C D D D 3. 5

19 D-FF Qs2 Qs stop start reset Qs2+ Ds2 Qs+ Ds 0 0 C0 0 (C2) (C)

20 Ds2 reset 0 start, stop Qs2,Qs Ds2 = Qs start + Qs start reset Ds reset 0 start, stop Qs2,Qs Ds = start stop reset + Qs stop 7

21 start stop NOT AND3 OR2 Ds SET D Q ~Q RESET D_FF AND2 st_sp NOT AND2 reset NOT Ds2 SET zero AND3 OR2 D Q ~Q RESET D_FF AND2 g_led clock AND2 AND2 OR2 g_led 2 NOT 3.8 g_led g_led2 3.9 LED LED2 start reset stop 6 C0 start reset g_led start LED start reset start start reset g_led2 reset LED2 LED LED2 LED LED2 stop start stop reset start stop reset start 3.9 LED 2 8

22 s0 s D D_FF Qc Qb Qa st_sp Qc+ (Dc) Qb+ (Db) Qa+(Da)

23 Da Db Qa,st_sp Qa,st_sp Qc,Qb Qc,Qb Da = Qc st_sp + Qa st_sp Db = Qb st_sp + Qa st_sp Dc Qa,st_sp Qc,Qb Dc = Qb st_sp + Qc st_sp 20

24 st_s SET D Qa NOT AND2 AND2 OR2 D Q ~Q RESET D_FF Qa SET D Qb AND2 AND2 OR2 D Q ~Q RESET D_FF Qb AND2 AND2 OR2 SET D Q D ~Q RESET D_FF Qc Qc cloc LED a f b e c d LED 2

25 Qc Qb Qa a b c d e f g b,e c,d g Qc,Qb 00 Qa 0 Qc,Qb 00 Qa 0 Qc,Qb 00 Qa be = Qb Qc cd = Qc + Qa g = Qc Qc + Qc Qb + Qb Qa a,f Qc af = Qc 22

26 AND2 a,f Qa b,e Qa AND3 Qb Qb OR2 AND2 c,d Qc Qc OR2 AND2 OR2 AND2 g AND2 zero NOT start stop reset SR D D

27 5V sw Key = Space kohm kohm kohm R R R D Q ~Q start start D_FF sw2 Key = Space D Q ~Q D_FF stop stop sw3 Key = Space D Q ~Q reset reset D_FF clock CMOS 20 25Hz CR LED 3.5 C R CR R2 inv3 A B R2 R inv3 U inv2 U2 A inv U3 Vout.0ohm NOT NOT NOT C C.0pF B 3.5 b R.0ohm R2 a 24

28 V Vdd A t V Vdd+Vinv Vdd Vinv 0 Vinv-Vdd t0 t t2 t T 3.7 B C A 0V inv 5V R a C B Vinv inv3 inv2 A 5V inv 0V C B Vinv+Vdd 25

29 3.7 t0 R b B Vinv inv3 A 0V C B Vinv-Vdd 3.7 t A 0V inv3 5V R a B Vinv 3.7 t2 t t2 inv3 PMOS NMOS t t2 t -t/cr Vinv = (Vdd + Vinv)e Vinv t ln( ) = Vdd + Vinv CR Vinv t = CR ln( ) Vdd + Vinv t2 Vdd + (Vinv - 2Vdd) Vinv = - 2Vdd - Vinv e - t2/cr e = - t2/cr t2 Vdd -Vinv = ln( ) CR 2Vdd - Vinv Vdd -Vinv t2 = - CRln( ) 2Vdd - Vinv Vinv T = t + t2 Vdd -Vinv Vinv T = - CRln( ) CR ln( ) 2Vdd - Vinv Vdd + Vinv (Vdd -Vinv) T = - CR ln[vinv ] (2Vdd - Vinv)(Vdd + Vinv) Vdd = 5V Vinv = /2Vdd T 2.2CR 26

30 f = 20Hz T = 0.05s R = 22 k C =.0 F 3.8 multisim LED start stop reset Qa Qb Qc 3.2 LED

31 Qa Qb Qc cd g af be 3.2 LED A 3.23 B 28

32 Vdd 0V 3.22 Vdd Vinv 0V

33 C.0 F R 22k f = 20.8Hz /2Vdd 50% 24.5Hz 25.0Hz 42% % inv3 PMOS NMOS t t2 NMOS PMOS CMOS CMOS Vinv-Vdd 2.5V IC IC muitisim IC 2 30

34 4. 8bitCPU 4. CPU 8bit CPU 4. HDL FPGA CPU CPU VHDL RTL FPGA 3

35 4.2 CPU CPU FPGA 4.2. CPU CPU 5 HALT LD ST SCF RCF MOV BR AND OR XOR COMP ADD ADC SUB SUC CPU 32

36 NF ZF CF VF SCF 0 RCF MOV BR BR no yes CF =

37 AND OR XOR COMP ADD ADC SUB SUC AND OR XOR COMP A B ADD ADC SUB SUC COMP 8bit bit 9bit bit A B ADD A B 8bit 9bit bit 8bit bit 8bit A 7 0 A 0 B ADD B ADC SUC ADC SUC 4.4 A B 0 A B 0 ADC SUC 8bit COMP SUB 4.5 A > B A = B A < B 3 A > B 34

38 0 A = B 0 A < B SUB A < B COMP bit 0 8bit 7 0 A 0 B COMP 0 A > B A = B 0 A < B

39 36 operand a b c IR PC MDR opcode operand 5 IR PC MDR opcode opcode operand IR PC MDR operand opcode opcode operand memory memory memory next opcode

40 4.6 a c IR PC MDR IR PC MDR PC 5 a PC IR b PC PC 6 MDR PC c MDR IR PC MDR MAR a 0 IR PC PC MAR PC b MAR c

41 38 3 displacement IX 4.8 a 25 IR PC MAR operand opcode opcode operand memory IR PC 0 2 opcode operand 2 MAR operand 20 opcode memory memory IR PC opcode 0 2 opcode operand MAR 4.7 a b c

42 IR PC PC MDR b IX MDR c IX a IR PC MDR opcode memory opcode displacement IX 50 memory IR opcode opcode displacement b PC MDR 7 IX 50 memory IR opcode opcode displacement c PC MDR displacement 50 IX

43 4 MAR memory IR opcode 3 opcode a PC next opcode MAR operand memory IR opcode 3 opcode 32 next opcode b PC MAR operand 38 data a 3 IR PC MAR b MAR 38 MAR 40

44 bit 2 6bit bit opcode 4bit 4.0 4bit 4bit 4. 4bit 4bit 8bit 5 always CF = on carry NF = on negative ZF = on zero VF = on over flow 2 PC opcode 4bit 4bit operand 8bit 4. 4

45 opcode 4bit 2bit 2bit 4.2 4bit 2bit opcode 4bit 2bit 2bit operand displacement 8bit

46 2 4bit 4 2bit IR IX MDR PC MAR ACC 2 ACC2 Flag 8bit CF ZF NF VF 4 4bit ACC ACC2 Flag 43

47 HALT LD ST SCF RCF MOV BR AND OR XOR COMP ADD ADC SUB SUC 44

48 IR PC MDR ACC ACC2 IX MAR ACC ACC2 IX MAR IR PC MDR 45

49 Always on carry on zero on overflow on negative 46

50 CPU ck reset test start 4 memr memw 8bit address bus 0 8bit (external data bus) ck reset external data bus 8bit CPU test address bus 8bit start memr memw register ALU address control 47

51 register control ALU address register IR ACC ACC2 IX MDR PC MAR control ALU address Flag

52 4.7 ALU ALU bus internal databus 2 ALU ALU databus buffer address bus internal data bus data bus buffer register IR ACC ACC2 IX MDR PC MAR external data bus control ALU address address bus Flag ALU bus test signal 2 ALU ALU multiplexer ALU 2 ALU ALU 2 test signal 2 test output ALU test signal ALU test output multiplexer 49

53 internal data bus data bus buffer register IR ACC ACC2 IX MDR PC MAR external data bus control test signal 2 Flag ALU-multiplexer ALU address test output address bus test signal ALU bus multiplexer ALU ACC ACC2 IX MAR IR MDR PC MAR PC inc mux MAR ALU mux ALU 0V 0V ALU ALU 0 OR 50

54 internal data bus ALU-bus mux mux2 IR ACC ACC2 IR MDR PC inc MAR internal data bus data bus buffer mux mux2 IR ACC ACC2 IX MDR PC inc MAR external data bus ALU- multiplexer Flag ALU test output ALU bus multiplexer

55 PC IX MDR MAR adder address multiplexer address bus internal data bus data bus buffer mux IR ACC ACC2 IX MDR PC inc mux2 MAR external data bus ALU- multiplexer adder address multiplexer address bus Flag ALU test output ALU bus multiplexer

56 4.2 PC IX MDR MAR address mutiplexer register IR control ALU_multiplexer, address multiprexer Flag ALU memory, databus IR Flag ALU ALU

57 internal data bus data bus buffer mux IR ACC ACC2 IX MDR PC inc mux2 MAR external data bus control ALU- multiplexer adder addressmultiplexer address bus Flag ALU ALU bus test output multiplexer memr memw

58 memr memw data address PC MAR IR register a_mux dbb MDR Flag LOW LOW ACC ACC2 MAR IX LOW HI a_mux : address multiprexer dbb : data bussbuffer 55

59 T0 T T2 T3 T4 T5 memr memw data address HALT a a+ PC a a+ IR HALT a_mux PC dbb 4.25 PC a_mux PC a T IR dbb 0 PC T2 IR

60 T0 T T2 T3 T4 T5 memr memw data LOAD operand address a a+ a+2 PC a a+ a+2 IR LOAD register (ACC 2, IX,MAR) a_mux PC operand dbb MDR operand a a PC a_mux PC T IR T2 a_mux PC a+ T3 MDR T4 ACC ACC2 IX MAR 57

61 T0 T T2 T3 T4 T5 T6 memr memw data LOAD operand data address a a+ operand a+2 PC MAR a a+ a+2 operand IR LOAD Register (ACC 2, IX,MAR) a_mux PC MAR data PC dbb MDR data a a PC a_mux PC T IR T2 a_mux PC a+ T3 MAR a_mux MAR MAR T5 MDR T6 ACC ACC2 IX MAR 58

62 T0 T T2 T3 T4 T5 T6 memr memw data LOAD dis data address a a+ dis +IX a+2 PC a a+ a+2 IR LOAD Register (ACC 2, IX,MAR) a_mux PC dis +IX data PC dbb MDR dis data a a PC a_mux PC T IR T2 dis a_mux PC a+ T3 MDR a_mux T5 MDR T6 ACC ACC2 IX MAR 59

63 T0 T T2 T3 T4 T5 memr memw data LOAD data address a a+ operand a+ PC a a+ MAR operand IR LOAD Register (ACC 2, IX,MAR) data a_mux PC MAR PC dbb MDR data a a PC a_mux PC T IR T2 a_mux MAR MAR T4 MDR T5 ACC ACC2 IX MAR 60

64 T0 T T2 T3 T4 T5 memr memw data ST operand data address a a+ operand a+2 PC a a+ a+2 MAR operand IR ST Register (ACC 2, IX,MAR) data a_mux PC MAR PC dbb a a PC a_mux PC T IR T2 T3 MAR a_mux MAR MAR T4 ACC ACC2 IX MAR T5 0 dbb 6

65 T0 T T2 T3 T4 T5 memr memw data ST dis data address a a+ dis +IX a+2 PC a a+ a+2 IR ST Register (ACC 2, IX,MAR) data a_mux PC dis +IX PC dbb MDR dis a a PC a_mux PC T IR T2 T3 MDR a_mux T4 ACC ACC2 IX MAR T5 0 dbb 62

66 T0 T T2 T3 T4 T5 memr memw data ST data address a a+ operand a+ PC a a+ MAR operand IR ST Register (ACC 2, IX,MAR) data a_mux PC MAR PC dbb a a PC a_mux PC T IR T2 a_mux MAR MAR ACC ACC2 IX MAR T4 0 dbb 63

67 T0 T T2 T3 T4 T5 memr memw data address MOV a a+ PC IR register (ACC 2, IX,MAR) a_mux dbb a a+ MOV data data2 PC data a a PC a_mux PC T IR T2 ALU data2 T3 64

68 T0 T T2 T3 T4 T5 memr memw data address SCF/RCF a a+ PC IR a a+ SCF/RCF a_mux PC dbb Flag CF=, a a PC a_mux PC T IR T2 0 T3 65

69 T0 T T2 T3 T4 T5 memr memw data BR operand address a a+ operand PC a a+ operand IR BR a_mux PC dbb a a PC a_mux PC T IR T2 T3 PC 66

70 T0 T T2 T3 T4 T5 memr memw data BR address a a+ a+2 PC a a+ a+2 IR BR a_mux dbb PC a a PC a_mux PC T IR T2 PC 67

71 T0 T T2 T3 T4 T5 memr memw data opcode operand address a a+ a+2 PC a a+ a+2 IR register (ACC2) opcode result a_mux PC dbb MDR operand a a PC a_mux PC T IR T2 PC a+ T3 MDR T3 T4 result ACC2 68

72 T0 T T2 T3 T4 T5 T6 memr memw data opcode operand data address a a+ operand a+2 PC a a+ a+2 MAR oprand IR opcode Register (ACC2) result a_mux PC MAR PC dbb MDR data a a PC a_mux PC T IR T2 PC a+ T3 MAR a_mux MAR MAR T5 MDR T5 T6 result ACC2 69

73 T0 T T2 T3 T4 T5 T6 memr memw data opcode dis data address a a+ dis +IX a+2 PC a a+ a+2 IR opcode Register (ACC2) result a_mux PC dis +IX PC dbb MDR dis data a a PC a_mux PC T IR T2 dis PC a+ T3 MDR a_mux IX T5 MDR T5 T6 result ACC2 70

74 T0 T T2 T3 T4 T5 memr memw data opcode data address a a+ operand a+ PC a a+ MAR operand IR Register (ACC2) opcode result a_mux PC MAR PC dbb MDR data a a PC a_mux PC T IR T2 MAR a_mux MAR T4 MDR T4 T5 result ACC2 7

75 CPU PC=PC+ PC address MAR address IX+MDR address mem IR mem MDR mem MAR mem PC reg mem MDR reg ALU ACC2 MDR ALU reg ALU reg reg ALU CF,0 Flag set satisfied HALT PC PC MAR IX MDR IR IR MAR PC MDR ALU ACC2 MDR ALU ALU ALU CF 0 CF 0 72

76 3 T0 T T2 T3 T4 T5 T6 HALT HALT LOAD imm ab ix PC address PC=PC+ mem MDR mem MAR MAR address mem MDR IX+MDR address MDR reg address mem address mem mem MDR MDR reg reg-i MAR address address mem mem MDR MDR reg ST ab ix PC address PC=PC+ mem IR PC address PC=PC+ mem MAR MAR address mem MDR IX+MDR address address mem address mem reg mem reg-i MAR address address mem reg mem MOV reg ALU ALU reg SCF,RCF BR BR2 CF,0 PC address satisfied Flag set mem PC PC=PC+ AND OR NOT... SUC imm ab ix reg-i PC address PC=PC+ MAR address mem MDR MDR ALU reg mem MAR MAR address mem MDR IX+MDR address address mem ALU ACC2 address mem address mem mem MDR mem MDR MDR reg ALU ALU ACC2 ALU ACC

77 4.2.9 CPU 4.42 PC address PC=PC+ mem IR HALT PC address satisfied reg ALU CF,0 PC address PC=PC+ MAR address mem PC PC=PC+ ALU reg Flag set mem MDR mem MDR mem MAR MAR address mem MDR IX+MDR address MDR reg ALU address mem mem MDR mem MDR MDR reg ALU reg mem MDR reg ALU ACC IR HDL

78 start = 0 idle start = read mem_ir HALT BR BR2 MOV SCF RCF LD ST OP (LSO) reg_i BR_ BR2_2 MOV2 SCF2 RCF2 imm ab ix ads_mem mem_reg reg_mem ALU_reg HALT idle start 75

79 4.3 HDL 4.3. HDL HDL ALU ALU ALU ALU cont 2 test IR ACC ACC2 IX MDR PC MAR cont cont2 test ALU- multiplexer out out2 test_o [7:0] [2:0] 4.44 ALU 76

80 77 ALU out2 ALU out test_o test out2 cont2 out cont MAR mar PC pc MDR mdr IX ix test_o ACC2 acc2 ACC acc IR ir 0 MAR 0 PC 00 MDR 0 IX 00 ACC2 00 ACC 000 IR test cont,2 00 MDR 0 GND 0 MAR 00 IX 00 ACC2 000 ACC 4.8 ALU 4.9

81 2 ALU ALU alu_cont alu_in alu_in2 alu_cont carry_in ALU alu_out alu_out2 [7:0] [3:0] [2:0] 4.45 ALU 78

82 4.0 ALU alu_in alu_in2 alu_cont carry_in alu_out alu_out2 ALU ALU ALU 4. AND OR XOR COMP ADD ADC SUB SUC alu_cont

83 flag_s a_mux PC MAR mux mux2 pc_s mar_s alu_c alu_mux_c alu_mux_c2 [7:0] ir flag ck reset start control ir_c acc_c acc2_c mdr_c mdr_s ix_c pc_c pc_s mar_c mar_s flag_c flag_s [3:0] a_mux dbb [2:0] [:0] memr memw

84 8 reset memw memr dbb a_mux MAR ALU mar_s Flag LOW flag_c Flag flag_s PC LOW pc_c PC PC pc_s MAR LOW mar_c IX LOW ix_c MDR LOW mdr_c ACC2 LOW acc2_c ACC LOW acc_c IR LOW ir_c ALU alu_mux_c2 ALU alu_mux_c ALU alu_c start ck Flag flag IR ir 4.2 ALU

85 4.3 PC MAR SCF RCF -- flag_s PC 00 0 MAR 0 MDR+IX -- a_mux pc_s mar_s data bus 0 ALU bus 0 PC data bus pc_s 0 PC PC mar_s 0 ALU MAR 82

86 pc mar mdr ix ads_mode ADDREESS [7:0] addreess_out [:0] pc mar mdr ix ads_mode address_out PC MAR MDR IX 83

87 5 PC PC pc_data_in ck reset PC pc_en pc_sel [7:0] pc_data_out 4.48 PC 4.5 PC pc_data_in pc_en pc_sel pc_data_out PC PC 84

88 6 MAR MAR mar_data_in mar_alu_in ck reset MAR mar_en mar_sel mar_data_out [7:0] 4.49 MAR 4.6 MAR mar_alu_in mar_data_in mar_en mar_sel mar_data_out ALU ALU MAR 85

89 7 Flag Flag ck reset flag_in_cf flag_in_zf flag_in_vf flag_in_nf Flag flag_out_cf flag_out_zf flag_out_vf flag_out_nf [:0] flag_en flag_sel 4.50 Flag 4.7 Flag flag_en flag_sel flag_in_cf flag_in_zf flag_in_vf flag_in_nf flag_out_cf flag_out_zf flag_out_vf flag_out_nf ALU 86

90 4.8 flag_sel ALU 00 flag_sel CF 0 CF 0 8 IR ACC ACC2 MDR IR ACC ACC2 MDR VHDL ir_data_in acc_data_in acc2_data_in ix_data_in mdr_data_in ck reset ir_en acc_en acc2_en ix_en mdr_en IR ACC ACC2 IX MDR ir_data_out acc_data_out acc2_data_out ix_data_out mdr_data_out [7:0]

91 4.9 ir_en acc_en acc2_en ix_en mdr_en ir_data_in acc_data_in acc2_data_in ix_data_in mdr_data_in ir_data_out acc_data_out acc2_data_out ix_data_out mdr_data_out ALU VHDL ALU 2 ALU PC 6 MAR 7 Flag 8 IR 9 VHDL ALU -- ALU_MULTIPLEXER library ieee; use ieee.std_logic_64.all; entity ALU_mux is port ( ir_o : in std_logic_vector(7 downto 0); acc_o: in std_logic_vector(7 downto 0); acc2_o: in std_logic_vector(7 downto 0); ix_o: in std_logic_vector(7 downto 0); mdr_o: in std_logic_vector(7 downto 0); pc_o: in std_logic_vector(7 downto 0); mar_o: in std_logic_vector(7 downto 0); cont : in std_logic_vector(2 downto 0); cont2 : in std_logic_vector(2 downto 0); 88

92 alu_mux_o : out std_logic_vector(7 downto 0); alu_mux_o2 : out std_logic_vector(7 downto 0); test_sel : in std_logic_vector(2 downto 0); test_o : out std_logic_vector(7 downto 0) ); end ALU_mux; architecture BEHAVIOR of ALU_mux is begin process(cont,cont2,test_sel,ir_o,acc_o,acc2_o,ix_o,mdr_o, pc_o,mar_o) begin case cont is when "000" => alu_mux_o <= acc_o; when "00" => alu_mux_o <= acc2_o; when "00" => alu_mux_o <= ix_o; when "0" => alu_mux_o <= mar_o; when "00" => alu_mux_o <= mdr_o; when "0" => alu_mux_o <= " "; when others => alu_mux_o <= "XXXXXXXX"; end case; end process; process(cont,cont2,test_sel,ir_o,acc_o,acc2_o,ix_o,mdr_o, pc_o,mar_o) begin case cont2 is when "000" => alu_mux_o2 <= acc_o; when "00" => alu_mux_o2 <= acc2_o; when "00" => alu_mux_o2 <= ix_o; when "0" => alu_mux_o2 <= mar_o; when "00" => alu_mux_o2 <= mdr_o; when "0" => alu_mux_o2 <= " "; when others => alu_mux_o2 <= "XXXXXXXX"; end case; end process; process (cont,cont2,test_sel,ir_o,acc_o,acc2_o,ix_o,mdr_o, 89

93 pc_o,mar_o) begin case test_sel is when "000" => test_o <= ir_o; when "00" => test_o <= acc_o; when "00" => test_o <= acc2_o; when "0" => test_o <= ix_o; when "00" => test_o <= mdr_o; when "0" => test_o <= pc_o; when "0" => test_o <= mar_o; when others => test_o <= "XXXXXXXX"; end case; end process; end BEHAVIOR ; 2 ALU -- ALU library ieee; use ieee.std_logic_64.all; use ieee.std_logic_unsigned.all; entity ALU is port (alu_in :in std_logic_vector(7 downto 0); alu_in2 :in std_logic_vector(7 downto 0); alu_cont :in std_logic_vector(2 downto 0); alu_cin : in std_logic; ); alu_out :out std_logic_vector(7 downto 0); cf : out std_logic; zf : out std_logic; vf : out std_logic; nf : out std_logic 90

94 end ALU; architecture BEHAVIOR of ALU is signal tmp : std_logic_vector(8 downto 0); begin alu_out <= tmp(7 downto 0); process(alu_cont,alu_in,alu_in2,alu_cin,alu_out) begin case alu_cont is --AND when "000" => tmp <= ('0' & alu_in) AND('0' & alu_in2) ; vf <= '0'; -- OR when "00" => tmp <= ('0' & alu_in) OR ('0' & alu_in2) ; vf <= '0'; -- XOR when "00" => tmp <= ('0' & alu_in) XOR ('0' & alu_in2) ; vf <= '0'; -- COMP when "0" => tmp <= ('0' & alu_in) - ('0' & alu_in2); if tmp(8) = '' then nf <= ''; else nf <= '0'; -- ADD when "00" => tmp <= ('0' & alu_in) + ('0' & alu_in2); if tmp(8) = '' then vf <= ''; else vf <= '0'; 9

95 -- ADC when "0" => tmp <= ('0' & alu_in) +('0' & alu_in2) + (" " & alu_cin); if tmp(8) = '' then cf <= '' ; else cf <= '0'; -- SUB when "0" => tmp <= ('0' & alu_in) - ('0' & alu_in2); if tmp(8) = '' then vf <= ''; else vf <= '0'; -- SUC when others => tmp <= ('0' & alu_in) - ('0' & alu_in2) -(" " & alu_cin); if tmp(8) = '' then cf <= ''; else cf <= '0'; end case; end process; -- all zero process(alu_cont,alu_in,alu_in2,alu_out) begin if tmp = " " then zf <= ''; else zf <= '0'; end process; end BEHAVIOR; 92

96 3 -- CONTROL library ieee; use ieee.std_logic_64.all; entity CONT is port ( ck: in std_logic; reset: in std_logic; start: in std_logic; opcode: in std_logic_vector(3 downto 0); ads_mode: in std_logic_vector(3 downto 0); cf,zf,vf,nf: in std_logic; alu_c: out std_logic_vector(2 downto 0); alu_mux_c: out std_logic_vector(2 downto 0); alu_mux_c2: out std_logic_vector(2 downto 0); ir_c: out std_logic; acc_c: out std_logic; acc2_c: out std_logic; ix_c: out std_logic; pc_c: out std_logic; pc_s: out std_logic; mar_c: out std_logic; mar_s: out std_logic; mdr_c: out std_logic; ads_mux: out std_logic_vector( downto 0); dbb_c: out std_logic; flag_c: out std_logic; flag_s: out std_logic_vector( downto 0); memr: out std_logic; memw: out std_logic ); end CONT; architecture RTL of CONT is type state is (idle,read,dec,halt,br,br_,br2,br2_2,mov,srcf,lso, 93

97 MOV2,SRCF2,imm,ab,ix,ads_mem,reg_i, ALU_reg,mem_reg,reg_mem ); signal current_state, next_state : state; begin process(ck,reset) begin if(reset = '0') then current_state <= idle; elsif(ck'event and ck = '') then current_state <= next_state; end process; process(ck,reset,opcode,ads_mode,start,current_state) begin case current_state is when idle => if(start = '0')then next_state <= read; else next_state <= idle; when read => next_state <= dec; when dec => if (opcode = "0000") then -- halt next_state <= HALT ; elsif(opcode = "000") then -- load if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; elsif(opcode = "000") then -- store if (ads_mode( downto 0) = "" )then next_state <= reg_i; 94

98 elsif (ads_mode( downto 0) = "00")then next_state <= idle; else next_state <= LSO; elsif(opcode = "00") then -- move next_state <= MOV; elsif(opcode = "00") then -- set carry flag next_state <= SRCF; elsif(opcode = "000") then -- reset carry flag next_state <= SRCF; elsif(opcode = "00") then -- branch if (ads_mode = "0000")then -- (always) next_state <= BR; elsif (ads_mode = "000")then --(on carry) if (cf = '')then next_state <= BR2; else next_state <= BR; elsif (ads_mode = "000")then -- (on zero flag) if (zf = '')then next_state <= BR2; else next_state <= BR; elsif (ads_mode = "000")then -- (on overflow flag) if (vf = '')then next_state <= BR2; else next_state <= BR; elsif (ads_mode = "000")then -- (on negative flag) if (nf = '')then next_state <= BR2; else 95

99 next_state <= BR; elsif(opcode = "0") then -- and if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; elsif(opcode = "000") then -- or if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; elsif(opcode = "00") then -- xor if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; elsif(opcode = "00") then -- cmpare if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; elsif(opcode = "0") then -- add if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; elsif(opcode = "00") then -- adc if (ads_mode( downto 0) = "" )then next_state <= reg_i; 96

100 else next_state <= LSO; elsif(opcode = "0") then -- sub if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; elsif(opcode = "0") then -- suc if (ads_mode( downto 0) = "" )then next_state <= reg_i; else next_state <= LSO; else next_state <= idle; when BR => next_state <= BR_; when BR2 => next_state <= BR2_2; when BR_ => next_state <= read; when BR2_2 => next_state <= read; when MOV => next_state <= MOV2; when MOV2 => next_state <= read; when SRCF => next_state <= SRCF2; when SRCF2 => next_state <= read; when HALT => next_state <= idle; when LSO => if (ads_mode( downto 0 ) = "00") then next_state <= imm; elsif (ads_mode( downto 0) = "0")then next_state <= ab; elsif (ads_mode( downto 0) = "0")then next_state <= ix; when imm => next_state <= alu_reg; 97

101 when alu_reg => next_state <= read; when ab => next_state <= ads_mem; when ix => next_state <= ads_mem; when ads_mem => if (opcode = "000")then next_state <= reg_mem; else next_state <= mem_reg; when mem_reg => next_state <= alu_reg; when alu_reg => next_state <= read; when reg_i => next_state <= ads_mem; when reg_mem => next_state <= read; when others => next_state <= idle; end case; end process; process(current_state) -- memr,memw,mdr_c begin if (current_state = read)then memr <= '0'; memw <= ''; mdr_c <= ''; elsif(current_state = LSO)then memr <= '0'; memw <= ''; mdr_c <= '0'; elsif(current_state = BR)then memr <= '0'; memw <= ''; mdr_c <= ''; elsif (current_state = ads_mem)then if (opcode = "000")then memr <= ''; memw <= '0'; mdr_c <= ''; else memr <= '0';memw <= ''; mdr_c <= '0'; else memr <= ''; memw <= ''; mdr_c <= ''; end process; process(current_state) -- ir_c begin 98

102 if (current_state = read )then ir_c <= '0'; else ir_c <= ''; end process; process(current_state) -- acc_c,acc2_c,ix_c,pc_c, mar_c begin if(current_state = idle)then acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <= ''; elsif (current_state = read)then acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= '0'; mar_c <= ''; elsif (current_state = imm )then if(opcode = "000")then acc_c <= '';acc2_c <= ''; ix_c <= ''; pc_c <= ''; mar_c <= ''; elsif (opcode = "000")then if (ads_mode(3 downto 2) = "00")then acc_c <= '0'; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <=''; elsif (ads_mode(3 downto 2) = "0")then acc_c <= ''; acc2_c <= '0';ix_c <= ''; pc_c <= ''; mar_c <=''; elsif (ads_mode(3 downto 2) = "0")then acc_c <= '';acc2_c <= ''; ix_c <= '0'; pc_c <= ''; mar_c <=''; else acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <='0'; else acc_c <= ''; acc2_c <= '0';ix_c <= ''; pc_c <= ''; mar_c <=''; elsif (current_state = mem_reg )then if(opcode = "000")then acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <=''; elsif(opcode = "000")then if (ads_mode(3 downto 2) = "00")then acc_c <= '0'; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <=''; elsif (ads_mode(3 downto 2) = "0")then acc_c <= ''; acc2_c <= '0';ix_c <= ''; pc_c <= ''; mar_c <=''; 99

103 elsif (ads_mode(3 downto 2) = "0")then acc_c <= ''; acc2_c <= ''; ix_c <= '0'; pc_c <= ''; mar_c <=''; else acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <='0'; else acc_c <= ''; acc2_c <= '0';ix_c <= ''; pc_c <= ''; mar_c <=''; elsif (current_state = LSO )then if(ads_mode( downto 0) = "0")then acc_c <= '';acc2_c <= ''; ix_c <= ''; pc_c <= '0'; mar_c <='0'; else acc_c <= '';acc2_c <= ''; ix_c <= ''; pc_c <= '0'; mar_c <=''; elsif (current_state = BR )then acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= '0'; mar_c <=''; elsif (current_state = BR2 )then acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= '0'; mar_c <=''; elsif (current_state = MOV)then if (ads_mode( downto 0) = "00")then acc_c <= '0'; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <= ''; elsif (ads_mode( downto 0) = "0")then acc_c <= ''; acc2_c <= '0';ix_c <= ''; pc_c <= ''; mar_c <= ''; elsif (ads_mode( downto 0) = "0")then acc_c <= '';acc2_c <= ''; ix_c <= '0'; pc_c <= ''; mar_c <= ''; elsif (ads_mode( downto 0) = "")then acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <= '0'; else acc_c <= '';acc2_c <= ''; ix_c <= ''; pc_c <= ''; mar_c <= ''; else acc_c <= ''; acc2_c <= '';ix_c <= ''; pc_c <= ''; mar_c <= ''; end process; process (current_state ) -- pc_s begin 00

104 if (current_state = read )then pc_s <= ''; elsif(current_state = LSO )then pc_s <= ''; elsif (current_state = BR2 )then pc_s <= ''; else pc_s <= '0'; end process; process(current_state) begin if(current_state = LSO)then mar_s <= ''; elsif(current_state = ab)then mar_s <= ''; else mar_s <= '0'; end process; -- mar_s process(current_state) -- address_mux begin if (current_state = ab)then ads_mux <= "0"; elsif(current_state = reg_i)then ads_mux <= "0"; elsif(current_state = ix)then ads_mux <= "0"; elsif(current_state = ALU_reg) then ads_mux <= "00"; elsif(current_state = reg_mem) then ads_mux <= "00"; elsif(current_state = idle) then ads_mux <= "00"; 0

105 end process; process(current_state) -- dbb_c begin if (current_state = ads_mem)then if(opcode = "000")then dbb_c <= ''; else dbb_c <= '0'; elsif(current_state = reg_mem)then if(opcode = "000")then dbb_c <= ''; else dbb_c <= '0'; else dbb_c <= '0'; end process; process(current_state) -- flag_c,flag_s begin if(current_state = SRCF)then if(opcode = "00")then flag_s <= "0"; flag_c <= '0'; elsif(opcode = "000")then flag_s <= "0"; flag_c <= '0'; else flag_c <= ''; elsif (current_state = mem_reg)then if (opcode > "00")then flag_s <= "00"; flag_c <= '0'; else 02

106 flag_s <= "00"; flag_c <= ''; elsif (current_state = imm)then if (opcode > "00")then flag_s <= "00"; flag_c <= '0'; else flag_s <= "00"; flag_c <= ''; else flag_s <= "00"; flag_c <= ''; end process; process (current_state) -- alu_mux_c,c2,alu_c begin if(opcode = "000")then -- load alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(opcode = "000")then -- st if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "0"; alu_mux_c2 <= "000"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "") then 03

107 alu_mux_c <= "0"; alu_mux_c2 <= "0"; alu_c <= "00"; elsif(opcode = "00")then -- MOV if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "0"; alu_mux_c2 <= "000"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "") then alu_mux_c <= "0"; alu_mux_c2 <= "0"; alu_c <= "00"; elsif(opcode = "0")then -- and if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= "000"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "000"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "000"; elsif(ads_mode(3 downto 2) = "") then 04

108 alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "000"; elsif(opcode = "000")then -- or if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(opcode = "00")then -- xor if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "") then 05

109 alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(opcode = "00")then -- comp if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(opcode = "0")then if(ads_mode(3 downto 2) = "00") then -- add alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(ads_mode(3 downto 2) = "") then 06

110 alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "00"; elsif(opcode = "00")then -- adc if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(opcode = "0")then -- sub if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(ads_mode(3 downto 2) = "") then 07

111 alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= "0"; elsif(opcode = "0")then if(ads_mode(3 downto 2) = "00") then alu_mux_c <= "000"; alu_mux_c2 <= "00"; alu_c <= ""; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= ""; elsif(ads_mode(3 downto 2) = "0") then alu_mux_c <= "00"; alu_mux_c2 <= "00"; alu_c <= ""; elsif(ads_mode(3 downto 2) = "") then alu_mux_c <= "0"; alu_mux_c2 <= "00"; alu_c <= ""; else alu_mux_c <= "XXX"; alu_mux_c2 <= "XXX"; alu_c <= "XXX"; end process; end RTL; -- suc 08

112 4 -- address library ieee; use ieee.std_logic_64.all; use ieee.std_logic_unsigned.all; entity ADDRESS is port ( ads_mode: in std_logic_vector( downto 0); pc: in std_logic_vector(7 downto 0); mar: in std_logic_vector(7 downto 0); mdr: in std_logic_vector(7 downto 0); ix: in std_logic_vector(7 downto 0); address_out: out std_logic_vector(7 downto 0) ); end ADDRESS; architecture BEHAVIOR of ADDRESS is begin process(ads_mode,pc,mar,mdr,ix) begin if (ads_mode = "00")then address_out <= pc; elsif(ads_mode = "0")then address_out <= mdr + ix; elsif(ads_mode = "0")then address_out <= mar; else address_out <= "XXXXXXXX" ; end process; end BEHAVIOR; 09

113 5 PC -- pc library ieee; use ieee.std_logic_64.all; use ieee.std_logic_unsigned.all; entity PC is port ( ); end PC; ck: in std_logic; reset: in std_logic; pc_en: in std_logic; pc_sel: in std_logic; pc_data_in: in std_logic_vector(7 downto 0); pc_data_out: buffer std_logic_vector(7 downto 0) architecture RTL of PC is signal tmp : std_logic_vector(7 downto 0); begin tmp <= pc_data_out + ; process(ck,reset) begin if ( reset = '0')then pc_data_out <= " "; else if ( ck'event and ck = '')then if ( pc_en = '0')then if (pc_sel = '0')then pc_data_out <= pc_data_in; else pc_data_out <= tmp; end process; 0

114 end RTL; 6 MAR -- MAR library ieee ; use ieee.std_logic_64.all; entity MAR is port ( ); end MAR; ck: in std_logic; reset: in std_logic; mar_sel: in std_logic; mar_en: in std_logic; mar_data_in: in std_logic_vector(7 downto 0); mar_alu_in: in std_logic_vector(7 downto 0); mar_data_out: out std_logic_vector(7 downto 0) architecture RTL of MAR is begin process(ck,reset) begin if ( reset = '0')then mar_data_out <= " "; else if ( ck'event and ck = '')then if ( mar_en = '0')then if (mar_sel = '0')then mar_data_out <= mar_alu_in; else mar_data_out <= mar_data_in; end process; end RTL;

115 7 Flag -- flag library ieee; use ieee.std_logic_64.all; entity FLAG is port ( ); end FLAG; ck: in std_logic; reset: in std_logic; flag_en: in std_logic; flag_sel: in std_logic_vector( downto 0); flag_in_cf: in std_logic; flag_in_zf: in std_logic; flag_in_vf: in std_logic; flag_in_nf: in std_logic; flag_out_cf: out std_logic; flag_out_zf: out std_logic; flag_out_vf: out std_logic; flag_out_nf: out std_logic architecture RTL of FLAG is begin process(ck,reset) begin if (reset = '0')then flag_out_cf <= '0'; flag_out_zf <= '0'; flag_out_vf <= '0'; flag_out_nf <= '0'; else if (ck'event and ck = '')then if (flag_sel = "00")then if (flag_en = '0') then flag_out_cf <= flag_in_cf; flag_out_zf <= flag_in_zf; 2

116 flag_out_vf <= flag_in_vf; flag_out_nf <= flag_in_nf; elsif (flag_sel = "0")then flag_out_cf <= ''; elsif (flag_sel = "0")then flag_out_cf <= '0'; end process; end RTL; 8 -- ir library ieee; use ieee.std_logic_64.all; entity IR is port ( ); end IR; ck: in std_logic; reset: in std_logic; ir_en: in std_logic; ir_data_in: in std_logic_vector(7 downto 0); ir_data_out: out std_logic_vector(7 downto 0) architecture RTL of IR is begin process(ck,reset) begin if ( reset = '0')then ir_data_out <= " "; else 3

117 if ( ck'event and ck = '')then if ( ir_en = '0')then ir_data_out <= ir_data_in; end process; end RTL; 9 -- K_CPU library ieee; use ieee.std_logic_64.all; use ieee.std_logic_unsigned.all; entity k_cpu is port ( ck: in std_logic; reset: in std_logic; start: in std_logic; test_cont: in std_logic; test_sel: in std_logic_vector(2 downto 0); data_in: in std_logic_vector(7 downto 0); dbb_cont: out std_logic; data_out: out std_logic_vector(7 downto 0); address_bus: out std_logic_vector(7 downto 0); memr: out std_logic; memw: out std_logic ); end k_cpu; architecture arch of k_cpu is component ALU_mux port ( 4

118 ir_o : in std_logic_vector(7 downto 0); acc_o: in std_logic_vector(7 downto 0); acc2_o: in std_logic_vector(7 downto 0); ix_o: in std_logic_vector(7 downto 0); mdr_o: in std_logic_vector(7 downto 0); pc_o: in std_logic_vector(7 downto 0); mar_o: in std_logic_vector(7 downto 0); cont : in std_logic_vector(2 downto 0); cont2 : in std_logic_vector(2 downto 0); alu_mux_o : out std_logic_vector(7 downto 0); alu_mux_o2 : out std_logic_vector(7 downto 0); test_sel : in std_logic_vector(2 downto 0); test_o : out std_logic_vector(7 downto 0) ); end component; component ALU port (alu_in :in std_logic_vector(7 downto 0); alu_in2 :in std_logic_vector(7 downto 0); alu_cont :in std_logic_vector(2 downto 0); alu_cin : in std_logic; alu_out :out std_logic_vector(7 downto 0); cf : out std_logic; zf : out std_logic; vf : out std_logic; nf : out std_logic ); end component; component CONT port ( ck: in std_logic; reset: in std_logic; start: in std_logic; opcode: in std_logic_vector(3 downto 0); ads_mode: in std_logic_vector(3 downto 0); cf,zf,vf,nf: in std_logic_vector(3 downto 0); alu_c: out std_logic_vector(2 downto 0); 5

119 alu_mux_c: out std_logic_vector(2 downto 0); alu_mux_c2: out std_logic_vector(2 downto 0); ir_c: out std_logic; acc_c: out std_logic; acc2_c: out std_logic; ix_c: out std_logic; pc_c: out std_logic; pc_s: out std_logic; mar_c: out std_logic; mar_s: out std_logic; mdr_c: out std_logic; ads_mux: out std_logic_vector( downto 0); dbb_c: out std_logic; flag_c: out std_logic; flag_s: out std_logic_vector( downto 0); memr: out std_logic; memw: out std_logic ); end component; component IR port ( ck: in std_logic; reset: in std_logic; ir_en: in std_logic; ir_data_in: in std_logic_vector(7 downto 0); ir_data_out: out std_logic_vector(7 downto 0) ); end component; component acc port ( ck: in std_logic; reset: in std_logic; acc_en: in std_logic; acc_data_in: in std_logic_vector(7 downto 0); acc_data_out: out std_logic_vector(7 downto 0) ); 6

120 end component; component acc2 port ( ck: in std_logic; reset: in std_logic; acc2_en: in std_logic; acc2_data_in: in std_logic_vector(7 downto 0); acc2_data_out: out std_logic_vector(7 downto 0) ); end component; component ix port ( ck: in std_logic; reset: in std_logic; ix_en: in std_logic; ix_data_in: in std_logic_vector(7 downto 0); ix_data_out: out std_logic_vector(7 downto 0) ); end component; component mdr port ( ck: in std_logic; reset: in std_logic; mdr_en: in std_logic; mdr_data_in: in std_logic_vector(7 downto 0); mdr_data_out: out std_logic_vector(7 downto 0) ); end component; component PC port ( ck: in std_logic; reset: in std_logic; pc_en: in std_logic; pc_sel: in std_logic; pc_data_in: in std_logic_vector(7 downto 0); pc_data_out: buffer std_logic_vector(7 downto 0) 7

121 ); end component; component MAR port ( ck: in std_logic; reset: in std_logic; mar_sel: in std_logic; mar_en: in std_logic; mar_data_in: in std_logic_vector(7 downto 0); mar_alu_in: in std_logic_vector(7 downto 0); mar_data_out: out std_logic_vector(7 downto 0) ); end component; component ADDRESS port ( ads_mode: in std_logic_vector( downto 0); pc: in std_logic_vector(7 downto 0); mar: in std_logic_vector(7 downto 0); mdr: in std_logic_vector(7 downto 0); ix: in std_logic_vector(7 downto 0); address_out: out std_logic_vector(7 downto 0) ); end component; component MUX port ( data_sel: in std_logic; test_output: in std_logic_vector(7 downto 0); alu_output: in std_logic_vector(7 downto 0); data_out: out std_logic_vector(7 downto 0) ); end component; component FLAG port ( ck: in std_logic; reset: in std_logic; 8

122 flag_en: in std_logic; flag_sel: in std_logic_vector( downto 0); flag_in_cf: in std_logic; flag_in_zf: in std_logic; flag_in_vf: in std_logic; flag_in_nf: in std_logic; flag_out_cf: out std_logic; flag_out_zf: out std_logic; flag_out_vf: out std_logic; flag_out_nf: out std_logic ); end component; signal ir_out,acc_out,acc2_out,ix_out,mdr_out, pc_out,mar_out : std_logic_vector (7 downto 0); signal alu_bus : std_logic_vector(7 downto 0); signal alu_in,alu_in2 : std_logic_vector(7 downto 0); signal alu_c: std_logic_vector(2 downto 0); signal alu_mux_c: std_logic_vector(2 downto 0); signal alu_mux_c2: std_logic_vector(2 downto 0); signal ir_c: std_logic; signal acc_c: std_logic; signal acc2_c: std_logic; signal ix_c: std_logic; signal pc_c: std_logic; signal pc_s: std_logic; signal mar_c: std_logic; signal mar_s: std_logic; signal mdr_c: std_logic; signal ads_mux: std_logic_vector( downto 0); signal flag_c: std_logic; signal flag_s: std_logic_vector( downto 0); signal test_output: std_logic_vector (7 downto 0); signal cf_o,zf_o,vf_o,nf_o: std_logic; signal cf_i,zf_i,vf_i,nf_i: std_logic; begin 9

123 U : ALU_mux port map (ir_out,acc_out,acc2_out,ix_out, mdr_out,pc_out,mar_out, alu_mux_c,alu_mux_c2, alu_in,alu_in2, test_sel, test_output); U2 : ALU port map (alu_in,alu_in2,alu_c,cf_o, alu_bus, cf_i,zf_i,vf_i,nf_i); U3 : CONT port map (ck,reset,start, ir_out(7 downto 4),ir_out(3 downto 0), cf_o,zf_o,vf_o,nf_o, alu_c,alu_mux_c,alu_mux_c2, ir_c,acc_c,acc2_c,ix_c,pc_c,pc_s,mar_c,mar_s, mdr_c,ads_mux,dbb_cont,flag_c,flag_s, memr,memw ); U4 : IR port map (ck,reset,ir_c,data_in,ir_out); U5 : ACC port map (ck,reset,acc_c,alu_bus,acc_out); U6 : ACC2 port map (ck,reset,acc2_c,alu_bus,acc2_out); U7 : IX port map (ck,reset,ix_c,alu_bus,ix_out); U8 : MDR port map (ck,reset,mdr_c,data_in,mdr_out); U9 : PC port map (ck,reset,pc_c,pc_s,data_in,pc_out); U0 : MAR port map (ck,reset,mar_s,mar_c,data_in,alu_bus,mar_out); U : ADDRESS port map (ads_mux,pc_out,mar_out, mdr_out,ix_out,address_bus); U2 : MUX port map (test_cont,test_output,alu_bus,data_out); U3 : FLAG port map(ck,reset, flag_c,flag_s, cf_i,zf_i,vf_i,nf_i, cf_o,zf_o,vf_o,nf_o); end arch; 20

124 4.3.3 CPU 4.52 a 3 4 b ACC 56H 80H 2H IX a b a CPU b memr IR 2 MDR 56H ACC 3 IR 4 MAR 80H 5 MDR 2H IX 2

125 ACC IR IX 2H 80H MDR IX 92H 2 3 memw ACC 4 IR MAR 80H 5 memw ACC 6 ACC 22

126 ACC 56H IX ACC2 IR 2 ACC IX 3 4 ACC ACC2 23

127 CF SCF 0 RCF SCF 2 flag_c CF flag_s CF 0 3 RCF 4 flag_c CF 0 flag_s CF 0 24

128 ACC 6H 3H ACC2 0H 2H 2 0H ACC2 3 4 ACC2 0H 2H ACC2 NF 5 NF 6 flag_c 25

129 CF CF IR 2 CF PC 3 ZF 4 ZF PC 26

130 CPU CPU test_cont 2 test_sel 00 ACC ACC 50H 3 test_sel 0 IX 52H test_sel 0 PC 09H test_sel 0 MDR 53H 27

131 4.4 CPU HDL 5. CPU 2 28

132 29

if clear = 1 then Q <= " "; elsif we = 1 then Q <= D; end rtl; regs.vhdl clk 0 1 rst clear we Write Enable we 1 we 0 if clk 1 Q if rst =

if clear = 1 then Q <=  ; elsif we = 1 then Q <= D; end rtl; regs.vhdl clk 0 1 rst clear we Write Enable we 1 we 0 if clk 1 Q if rst = VHDL 2 1 VHDL 1 VHDL FPGA VHDL 2 HDL VHDL 2.1 D 1 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; regs.vhdl entity regs is clk, rst : in std_logic; clear : in std_logic; we

More information

1 1 2 2 2-1 2 2-2 4 2-3 11 2-4 12 2-5 14 3 16 3-1 16 3-2 18 3-3 22 4 35 4-1 VHDL 35 4-2 VHDL 37 4-3 VHDL 37 4-3-1 37 4-3-2 42 i

1 1 2 2 2-1 2 2-2 4 2-3 11 2-4 12 2-5 14 3 16 3-1 16 3-2 18 3-3 22 4 35 4-1 VHDL 35 4-2 VHDL 37 4-3 VHDL 37 4-3-1 37 4-3-2 42 i 1030195 15 2 10 1 1 2 2 2-1 2 2-2 4 2-3 11 2-4 12 2-5 14 3 16 3-1 16 3-2 18 3-3 22 4 35 4-1 VHDL 35 4-2 VHDL 37 4-3 VHDL 37 4-3-1 37 4-3-2 42 i 4-3-3 47 5 52 53 54 55 ii 1 VHDL IC VHDL 5 2 3 IC 4 5 1 2

More information

TECH_I Vol.25 改訂新版PCIデバイス設計入門

TECH_I Vol.25 改訂新版PCIデバイス設計入門 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity n is port( ); end entity n; architecture RTL of nis begin when : process begin end process :process begin end process

More information

.,. 0. (MSB). =2, =1/2.,. MSB LSB, LSB MSB. MSB 0 LSB 0 0 P

.,. 0. (MSB). =2, =1/2.,. MSB LSB, LSB MSB. MSB 0 LSB 0 0 P , 0 (MSB) =2, =1/2, MSB LSB, LSB MSB MSB 0 LSB 0 0 P61 231 1 (100, 100 3 ) 2 10 0 1 1 0 0 1 0 0 100 (64+32+4) 2 10 100 2 5, ( ), & 3 (hardware), (software) (firmware), hardware, software 4 wired logic

More information

untitled

untitled 13 Verilog HDL 16 CPU CPU IP 16 1023 2 reg[ msb: lsb] [ ]; reg [15:0] MEM [0:1023]; //16 1024 16 1 16 2 FF 1 address 8 64 `resetall `timescale 1ns/10ps module mem8(address, readdata,writedata, write, read);

More information

VHDL

VHDL VHDL 1030192 15 2 10 1 1 2 2 2.1 2 2.2 5 2.3 11 2.3.1 12 2.3.2 12 2.4 12 2.4.1 12 2.4.2 13 2.5 13 2.5.1 13 2.5.2 14 2.6 15 2.6.1 15 2.6.2 16 3 IC 17 3.1 IC 17 3.2 T T L 17 3.3 C M O S 20 3.4 21 i 3.5 21

More information

untitled

untitled Verilog HDL Verilog HDL VerilogHDL veriloghdl / CPLD , 1bit 2 MUX 5 D,E) always) module MUX(out, a, b, sel); output out; input a, b, sel; A) IF module MUX(out, a, b, sel); output out; input a, b, sel;

More information

Unconventional HDL Programming ( version) 1

Unconventional HDL Programming ( version) 1 Unconventional HDL Programming (20090425 version) 1 1 Introduction HDL HDL Hadware Description Language printf printf (C ) HDL 1 HDL HDL HDL HDL HDL HDL 1 2 2 2.1 VHDL 1 library ieee; 2 use ieee.std_logic_1164.all;

More information

3 SIMPLE ver 3.2: SIMPLE (SIxteen-bit MicroProcessor for Laboratory Experiment) 1 16 SIMPLE SIMPLE 2 SIMPLE 2.1 SIMPLE (main memo

3 SIMPLE ver 3.2: SIMPLE (SIxteen-bit MicroProcessor for Laboratory Experiment) 1 16 SIMPLE SIMPLE 2 SIMPLE 2.1 SIMPLE (main memo 3 SIMPLE ver 3.2: 20190404 1 3 SIMPLE (SIxteen-bit MicroProcessor for Laboratory Experiment) 1 16 SIMPLE SIMPLE 2 SIMPLE 2.1 SIMPLE 1 16 16 (main memory) 16 64KW a (C )*(a) (register) 8 r[0], r[1],...,

More information

スライド 1

スライド 1 1 1. 2 2. 3 isplever 4 5 6 7 8 9 VHDL 10 VHDL 4 Decode cnt = "1010" High Low DOUT CLK 25MHz 50MHz clk_inst Cnt[3:0] RST 2 4 1010 11 library ieee; library xp; use xp.components.all; use ieee.std_logic_1164.all;

More information

論理設計の基礎

論理設計の基礎 . ( ) IC (Programmable Logic Device, PLD) VHDL 2. IC PLD 2.. PLD PLD PLD SIC PLD PLD CPLD(Complex PLD) FPG(Field Programmable Gate rray) 2.2. PLD PLD PLD I/O I/O : PLD D PLD Cp D / Q 3. VHDL 3.. HDL (Hardware

More information

untitled

untitled MOSFET 17 1 MOSFET.1 MOS.1.1 MOS.1. MOS.1.3 MOS 4.1.4 8.1.5 9. MOSFET..1 1.. 13..3 18..4 18..5 0..6 1.3 MOSFET.3.1.3. Poon & Yau 3.3.3 LDD MOSFET 5 3.1 3.1.1 6 3.1. 6 3. p MOSFET 3..1 8 3.. 31 3..3 36

More information

Microsoft Word - 実験4_FPGA実験2_2015

Microsoft Word - 実験4_FPGA実験2_2015 FPGA の実験 Ⅱ 1. 目的 (1)FPGA を用いて組合せ回路や順序回路を設計する方法を理解する (2) スイッチや表示器の動作を理解し 入出力信号を正しく扱う 2. スケジュール項目 FPGAの実験 Ⅱ( その1) FPGAの実験 Ⅱ( その2) FPGAの実験 Ⅱ( その3) FPGAの実験 Ⅱ( その4) FPGAの実験 Ⅱ( その5) FPGAの実験 Ⅱ( その6) FPGAの実験 Ⅱ(

More information

デザインパフォーマンス向上のためのHDLコーディング法

デザインパフォーマンス向上のためのHDLコーディング法 WP231 (1.1) 2006 1 6 HDL FPGA TL TL 100MHz 400MHz HDL FPGA FPGA 2005 2006 Xilinx, Inc. All rights reserved. XILINX, the Xilinx logo, and other designated brands included herein are trademarks of Xilinx,

More information

? FPGA FPGA FPGA : : : ? ( ) (FFT) ( ) (Localization) ? : 0. 1 2 3 0. 4 5 6 7 3 8 6 1 5 4 9 2 0. 0 5 6 0 8 8 ( ) ? : LU Ax = b LU : Ax = 211 410 221 x 1 x 2 x 3 = 1 0 0 21 1 2 1 0 0 1 2 x = LUx = b 1 31

More information

回路 7 レジスタ ( 同期イネーブル及び非同期リセット付 ) 入力データを保持するのに用いる記憶素子 使用用途として, マイクロプロセッサ内部で演算や実行状態の保持に用いられる Fig4-2 のレジスタは, クロック信号の立ち上がり時かつ 信号が 1 のときに外部からの 1 ビットデータ R をレ

回路 7 レジスタ ( 同期イネーブル及び非同期リセット付 ) 入力データを保持するのに用いる記憶素子 使用用途として, マイクロプロセッサ内部で演算や実行状態の保持に用いられる Fig4-2 のレジスタは, クロック信号の立ち上がり時かつ 信号が 1 のときに外部からの 1 ビットデータ R をレ 第 4 回 VHDL 演習 2 プロセス文とステートマシン プロセス文を用いるステートマシンの記述について学ぶ 回路 6 バイナリカウンタ (Fig.4-1) バイナリカウンタを設計し, クロック信号に同期して動作する同期式回路の動作を学ぶ ⅰ) リスト 4-1 のコードを理解してから, コンパイル, ダウンロードする ⅱ) 実験基板上のディップスイッチを用いて, 発生するクロック周波数を 1Hz

More information

main.dvi

main.dvi 20 II 7. 1 409, 3255 e-mail: namba@faculty.chiba-u.jp 2 1 1 1 4 2 203 2 1 1 1 5 503 1 3 1 2 2 Web http://www.icsd2.tj.chiba-u.jp/~namba/lecture/ 1 2 1 5 501 1,, \,", 2000 7. : 1 1 CPU CPU 1 Intel Pentium

More information

Microsoft PowerPoint LC_15.ppt

Microsoft PowerPoint LC_15.ppt ( 第 15 回 ) 鹿間信介摂南大学理工学部電気電子工学科 特別講義 : 言語を使った設計 (2) 2.1 HDL 設計入門 2.2 FPGA ボードの設計デモ配布資料 VHDL の言語構造と基本文法 2.1 HDL 設計入門 EDAツール : メンター社製品が有名 FPGAベンダーのSW 1 1 仕様設計 にも簡易機能あり 2 3 2 HDLコード記述 3 論理シミュレーション 4 4 論理合成

More information

フリップフロップ

フリップフロップ 第 3 章フリップ フロップ 大阪大学大学院情報科学研究科 今井正治 imai@ist.osaka-u.ac.jp http://www-ise1.ist.osaka-u.ac.jp/~imai/ 2005/10/17 2006, Masaharu Imai 1 講義内容 フリップ フロップの基本原理 RS フリップ フロップ D ラッチ D フリップ フロップ JK フリップ フロップ T フリップ

More information

エンティティ : インタフェースを定義 entity HLFDD is port (, : in std_logic ;, : out std_logic ) ; end HLFDD ; アーキテクチャ : エンティティの実現 architecture RH1 of HLFDD is <= xor

エンティティ : インタフェースを定義 entity HLFDD is port (, : in std_logic ;, : out std_logic ) ; end HLFDD ; アーキテクチャ : エンティティの実現 architecture RH1 of HLFDD is <= xor VHDL を使った PLD 設計のすすめ PLD 利用のメリット 小型化 高集積化 回路の修正が容易 VHDL 設計のメリット 汎用の設計になる ( どこのデバイスにも搭載可能 ) 1/16 2001/7/13 大久保弘崇 http://www.aichi-pu.ac.jp/ist/~ohkubo/ 2/16 設計の再利用が促進 MIL 記号の D での設計との比較 Verilog-HDL などでも別に同じ

More information

卒 業 研 究 報 告

卒 業 研 究 報 告 VHDL 1040183 16 2 17 1 1 2 2 2 2 2 1 2 2 2 3 7 3 18 19 20 22 23 25 4 VHDL 27 27 8 BCD 2 27 28 REG_B 29 29 STATE 29 31 VHDL 5 VHDL 1 CPU Hardware Description Language : HDL VHDL VHSIC HDL 1 2 3 VHDL 4 3

More information

問 2. タイミングチャート以下に示す VHDL コードで記述されている回路に関するタイミングチャートを完成させよ ) レジスタの動作 use IEEE.std_logic_64.all; entity RegN is generic (N : integer := 8 port ( CLK, EN

問 2. タイミングチャート以下に示す VHDL コードで記述されている回路に関するタイミングチャートを完成させよ ) レジスタの動作 use IEEE.std_logic_64.all; entity RegN is generic (N : integer := 8 port ( CLK, EN 第 8 回中間試験前の演習 問.VHDL ソースコードを読む () 次の VHDL のソースコードが記述しているゲート回路の回路図を示せ. use IEEE.STD_LOGIC_64.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity Logic is port ( A : in std_logic_vector(3

More information

2005 1

2005 1 25 SPARCstation 2 CPU central processor unit 25 2 25 3 25 4 DRAM 25 5 25 6 : DRAM 25 7 2 25 8 2 25 9 2 bit: binary digit V 2V 25 2 2 2 2 4 5 2 6 3 7 25 A B C A B C A B C A B C A C A B 3 25 2 25 3 Co Cin

More information

13 2 9

13 2 9 13 9 1 1.1 MOS ASIC 1.1..3.4.5.6.7 3 p 3.1 p 3. 4 MOS 4.1 MOS 4. p MOS 4.3 5 CMOS NAND NOR 5.1 5. CMOS 5.3 CMOS NAND 5.4 CMOS NOR 5.5 .1.1 伝導帯 E C 禁制帯 E g E g E v 価電子帯 図.1 半導体のエネルギー帯. 5 4 伝導帯 E C 伝導電子

More information

スライド 1

スライド 1 isplever CLASIC 1.2 Startup Manual for MACH4000 Rev.1.0 isplever_ CLASIC Startup_for_MACH4000_Rev01.ppt Page: 1 1. Page 3 2. Lattice isplever Design Flow Page 4 3. Page 5 3-1 Page 6 3-2 Page 7 3-3 Page

More information

- VHDL 演習 ( 組み合せ論理回路 ) 回路 半加算器 (half adder,fig.-) 全加算器を構成する要素である半加算器を作成する i) リスト - のコードを理解してから, コンパイル, ダウンロードする ii) 実験基板上のスイッチ W, が, の入力,LED, が, の出力とな

- VHDL 演習 ( 組み合せ論理回路 ) 回路 半加算器 (half adder,fig.-) 全加算器を構成する要素である半加算器を作成する i) リスト - のコードを理解してから, コンパイル, ダウンロードする ii) 実験基板上のスイッチ W, が, の入力,LED, が, の出力とな 第 回 VHDL 演習組み合せ論理回路 VHDL に関する演習を行う 今回は, 組み合せ論理回路の記述について学ぶ - 論理回路の VHDL 記述の基本 同時処理文を並べることで記述できる 部品の接続関係を記述 順番は関係ない process 文の内部では, 順次処理文を使う process 文 つで, つの同時処理文になる順次処理文は, 回路の動作を 逐次処理的 に ( 手続き処理型プログラム言語のように

More information

Microsoft PowerPoint - 集積回路工学_ ppt[読み取り専用]

Microsoft PowerPoint - 集積回路工学_ ppt[読み取り専用] 2007.11.12 集積回路工学 Matsuzawa Lab 1 集積回路工学 東京工業大学 大学院理工学研究科 電子物理工学専攻 2007.11.12 集積回路工学 Matsuzawa Lab 2 1. 1. ハードウェア記述言語 (VHDL で回路を設計 ) HDL 設計の手順や基本用語を学ぶ RTL とは? Register Transfer Level レジスタ間の転送関係を表現したレベル慣例的に以下のことを行う

More information

------------------------------------------------------------------------------------------------------- 1 --------------------------------------------

------------------------------------------------------------------------------------------------------- 1 -------------------------------------------- ------------------------------------------------------------------------------------------------------- 1 -------------------------------------------------------------------------- 2 -----------------------------------------------------------------------------

More information

PeakVHDL Max+Plus VGA VG

PeakVHDL Max+Plus VGA VG 2001 PC 9720002 14 2 7 4 1 5 1.1... 5 1.2... 5 1.3... 6 1.4... 6 2 7 2.1... 7 2.2... 8 2.2.1... 8 2.3... 9 2.3.1 PeakVHDL... 9 2.3.2 Max+Plus2... 9 3 VGA 10 3.1... 10 3.2 VGA... 10 3.3 VGA... 11 3.4 VGA...

More information

Design at a higher level

Design at a higher level Meropa FAST 97 98 10 HLS, Mapping, Timing, HDL, GUI, Chip design Cadence, Synopsys, Sente, Triquest Ericsson, LSI Logic 1980 RTL RTL gates Applicability of design methodologies given constant size of

More information

VBI VBI FM FM FM FM FM DARC DARC

VBI VBI FM FM FM FM FM DARC DARC 14 2 7 2.1 2.1.1 2.1.2 2.1.3 2.1.3.1 VBI 2.1.3.2 VBI 2.1.4 2.1.5 2.1.6 10 2.FM 11 2.2.1 FM 11 2.2.2 FM 11 2.2.3FM 13 2.2.4 FM DARC 14 2.2.4.1 DARC 14 2.2.4.2 DARC 14 17 3.1 17 3.1.1 parity 17 3.1.2 18

More information

Verilog HDL による回路設計記述

Verilog HDL による回路設計記述 Verilog HDL 3 2019 4 1 / 24 ( ) (RTL) (HDL) RTL HDL アルゴリズム 動作合成 論理合成 論理回路 配置 配線 ハードウェア記述言語 シミュレーション レイアウト 2 / 24 HDL VHDL: IEEE Std 1076-1987 Ada IEEE Std 1164-1991 Verilog HDL: 1984 IEEE Std 1364-1995

More information

Microsoft PowerPoint - NxLecture ppt [互換モード]

Microsoft PowerPoint - NxLecture ppt [互換モード] 011-05-19 011 年前学期 TOKYO TECH 命令処理のための基本的な 5 つのステップ 計算機アーキテクチャ第一 (E) 5. プロセッサの動作原理と議論 吉瀬謙二計算工学専攻 kise_at_cs.titech.ac.jp W61 講義室木曜日 13:0-1:50 IF(Instruction Fetch) メモリから命令をフェッチする. ID(Instruction Decode)

More information

2ALU 以下はデータ幅 4ビットの ALU の例 加算, 減算,AND,OR の4つの演算を実行する 実際のプロセッサの ALU は, もっと多種類の演算が可能 リスト 7-2 ALU の VHDL 記述 M use IEEE.STD_LOGIC_1164.ALL; 00 : 加算 use IEE

2ALU 以下はデータ幅 4ビットの ALU の例 加算, 減算,AND,OR の4つの演算を実行する 実際のプロセッサの ALU は, もっと多種類の演算が可能 リスト 7-2 ALU の VHDL 記述 M use IEEE.STD_LOGIC_1164.ALL; 00 : 加算 use IEE 差し替え版 第 7 回マイクロプロセッサの VHDL 記述 マイクロプロセッサ全体および主要な内部ユニットの,VHDL 記述の例を示す. 1)MPU(Micro Processor Uit) Module 1MPU のエンティティ記述とコントローラの例以下は, 簡単な MPU の VHDL 記述の例である ただし, アーキテクチャ部分は, 命令読み込みと実行の状態遷移のみを実現したステートマシンである

More information

NL-22/NL-32取扱説明書_操作編

NL-22/NL-32取扱説明書_操作編 MIC / Preamp ATT NL-32 A C ATT AMP 1 AMP 2 AMP 3 FLAT FLAT CAL.SIG. OVER LOAD DET. AMP 4 AMP 5 A/D D/A CONV. AMP 6 AMP 7 A/D CONV. Vref. AMP 8 AMP 10 DC OUT AMP 9 FILTER OUT AC DC OUT AC OUT KEY SW Start

More information

(Making the electronic circuit with use of micro-processor)

(Making the electronic circuit with use of micro-processor) (Making the electronic circuit with use of micro-processor) 1055083 1 1 2 3 4 2L T = Vs T = 1 34000 2 = 58.824 5 4069 9V R1 1k Q1 NPN R2 1k

More information

「FPGAを用いたプロセッサ検証システムの製作」

「FPGAを用いたプロセッサ検証システムの製作」 FPGA 2210010149-5 2005 2 21 RISC Verilog-HDL FPGA (celoxica RC100 ) LSI LSI HDL CAD HDL 3 HDL FPGA MPU i 1. 1 2. 3 2.1 HDL FPGA 3 2.2 5 2.3 6 2.3.1 FPGA 6 2.3.2 Flash Memory 6 2.3.3 Flash Memory 7 2.3.4

More information

RSA FA FA AND Booth FA FA RSA 3 4 5

RSA FA FA AND Booth FA FA RSA 3 4 5 RSA High-Speed Multiplication for RSA ode using Redundant Binary System 6585 6 6 RSA FA FA AND Booth FA FA RSA 3 4 5 This paper summarizes High-Speed Multiplication for RSA ode using Redundant Binary System,

More information

2.5. Verilog 19 Z= X + Y - Z A+B LD ADD SUB ST (X<<1)+(Y<<1) X 1 2 LD SL ST 2 10

2.5. Verilog 19 Z= X + Y - Z A+B LD ADD SUB ST (X<<1)+(Y<<1) X 1 2 LD SL ST 2 10 2.5. Verilog 19 Z= X + Y - Z A+B LD 0 0001 0000 ADD 1 0110 0001 SUB 2 0111 0010 ST 2 1000 0010 (X

More information

NL-20取扱説明書_操作編

NL-20取扱説明書_操作編 MIC / Preamp A C AMP 1 AMP 2 AMP 3 FLAT FLAT CAL.SIG. OVER LOAD DET. AMP 4 AMP 5 A/D D/A CONV. V ref. AMP 8 AMP 10 DC OUT AC OUT AC DC OUT DATA BUS CPU ADDRESS BUS DSP Start Pause Stop Store Mode Cont

More information

( ) : 1997

( ) : 1997 ( ) 2008 2 17 : 1997 CMOS FET AD-DA All Rights Reserved (c) Yoichi OKABE 2000-present. [ HTML ] [ PDF ] [ ] [ Web ] [ ] [ HTML ] [ PDF ] 1 1 4 1.1..................................... 4 1.2..................................

More information

LSI LSI 2

LSI LSI 2 LSI LSI 2 P=CV 2 F 3 4 5 EDA Electric Design Automation) LSI CAD Computer Aided Design) Verilog Verify Logic VHDL VHSIC Description Language) SystemC C SFL Structured Functional description Language) NTT

More information

1 8 Z80 Z GBA ASIC 2 WINDOWS C 1

1 8 Z80 Z GBA ASIC 2 WINDOWS C 1 1 8 Z80 Z80 20 8080 GBA ASIC 2 WINDOWS C 1 2.1 Z-80 A 0 - A 15 CPU Z80 D 0- D 7 I/O Z80 1: 1 (1) CPU CPU Z80 CPU Z80 AND,OR,NOT, (2) CPU (3) I/O () Z80 (4) 2 Z80 I/O 16 16 A 0, A 1,, A 15 (5) Z80I/O 8

More information

Microsoft Word - HW06K doc

Microsoft Word - HW06K doc 完了した CP:1~19( 合計 19 個 ) 未達成の CP:20 [ 要旨 目的 ] CPU の製作を行う CPU の製作を通じて ハードウェア設計の流れを理解する CPU の構造について 理解を深める CPU 製作第 3 回の実験では 最終的なCPUの完成を目指す [ 原理 理論 ] まずは CPU の構造設計から行う 全体の構成は次のようになる 下の図では モニター回路は含まれない chattering

More information

NAND FF,,

NAND FF,, 1. 1.1. NAND FF,, 1.2. 2. 1 3. アドレス ( 番地 ) 0 99 1 3 2 4 3 20 4 2 5 20 4. 8bit(0255) 7(3+4) 16 8 命令表 (0~255) コード内容 ( 機械語 ) ( 次の番地の内容 )+( 次の次の番地の内 99 容 ) の結果を次の次の次に書いてある番地に格納 2STOP A0A7, A8A15 D0D7 2 4.2.

More information

プロセッサ・アーキテクチャ

プロセッサ・アーキテクチャ 2. NII51002-8.0.0 Nios II Nios II Nios II 2-3 2-4 2-4 2-6 2-7 2-9 I/O 2-18 JTAG Nios II ISA ISA Nios II Nios II Nios II 2 1 Nios II Altera Corporation 2 1 2 1. Nios II Nios II Processor Core JTAG interface

More information

<4D F736F F D2091B28BC68CA48B8695F18D902E646F63>

<4D F736F F D2091B28BC68CA48B8695F18D902E646F63> 卒業研究報告 題目 LED ディスプレイ用動画表示制御回路の設計と製作 指導教員 矢野政顕教授 報告者学籍番号 : 1060237 氏名 : 田中振宇 平成 18 年 2 月 21 日 高知工科大学電子 光システム工学科 目次 第 1 章はじめに 1 第 2 章 LED ディスプレイ 2 2-1 LED(Light Emitting Diode) 2 2-1-1 LED の発光原理 2 2-1-2

More information

MOSFET HiSIM HiSIM2 1

MOSFET HiSIM HiSIM2 1 MOSFET 2007 11 19 HiSIM HiSIM2 1 p/n Junction Shockley - - on-quasi-static - - - Y- HiSIM2 2 Wilson E f E c E g E v Bandgap: E g Fermi Level: E f HiSIM2 3 a Si 1s 2s 2p 3s 3p HiSIM2 4 Fermi-Dirac Distribution

More information

FPGA と LUPO その1

FPGA と LUPO その1 FPGA Lecture for LUPO and GTO Vol. 1 2010, 31 August (revised 2013, 19 November) H. Baba Contents FPGA の概要 LUPO の基本的な使い方 New Project Read and Write 基本的な Behavioral VHDL simulation Firmware のダウンロード FPGA

More information

DB0

DB0 IRQ CS# A0 RD# WR# DB0- CPU I/F FIFO/RAM 88 Timing Control Key In Control Scan Counter SHIFT CNTl/STB RL0-# SL0- BD# RESET CLK Display RAM 8 Display Drive OUTB0- OUTA0- RL# RL# RL# RL# RESET RD# WR# GND

More information

MOSFET 6-2 CMOS 6-2 TTL Transistor Transistor Logic ECL Emitter Coupled Logic I2L Integrated

MOSFET 6-2 CMOS 6-2 TTL Transistor Transistor Logic ECL Emitter Coupled Logic I2L Integrated 1 -- 7 6 2011 11 1 6-1 MOSFET 6-2 CMOS 6-2 TTL Transistor Transistor Logic ECL Emitter Coupled Logic I2L Integrated Injection Logic 6-3 CMOS CMOS NAND NOR CMOS 6-4 6-5 6-1 6-2 CMOS 6-3 6-4 6-5 c 2011 1/(33)

More information

HITACHI 液晶プロジェクター CP-EX301NJ/CP-EW301NJ 取扱説明書 -詳細版- 【技術情報編】 日本語

HITACHI 液晶プロジェクター CP-EX301NJ/CP-EW301NJ 取扱説明書 -詳細版- 【技術情報編】 日本語 A B C D E F G H I 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 K L J Y CB/PB CR/PR COMPONENT VIDEO OUT RS-232C RS-232C RS-232C Cable (cross) LAN cable (CAT-5 or greater) LAN LAN LAN LAN RS-232C BE

More information

ディジタルシステム設計

ディジタルシステム設計 Z80 Z80 Z80 Z80 ROM RAM I/O 8255 8251 Z80PIO Z80CTC Z80SIO R C L Tr OP TTL MCB Z MC Z Z80 Z80 TMPZ84015BF KL5C8012 64180 H8 H8 PIC Microchip Technology PIC Z80 F A A' ALU B D H C E L IX IY SP PC C E L

More information

1 142

1 142 7 1 2 3 4 5 6 7 8 1 142 PhoenixBIOS Setup Utility MainSystem DevicesSecurityPowerOthersBootExit System Time: [XX:XX:XX] Item Specific Help System Date: [XX/XX/XXXX] Floppy Drive: 1.44MB, 3 1 / 2" Hard

More information

HITACHI 液晶プロジェクター CP-AX3505J/CP-AW3005J 取扱説明書 -詳細版- 【技術情報編】

HITACHI 液晶プロジェクター CP-AX3505J/CP-AW3005J 取扱説明書 -詳細版- 【技術情報編】 B A C E D 1 3 5 7 9 11 13 15 17 19 2 4 6 8 10 12 14 16 18 H G I F J M N L K Y CB/PB CR/PR COMPONENT VIDEO OUT RS-232C LAN RS-232C LAN LAN BE EF 03 06 00 2A D3 01 00 00 60 00 00 BE EF 03 06 00 BA D2 01

More information

xi21-x.dvi

xi21-x.dvi 8 7 1 1 1 2018 12 21 2018 (2) : 50, 67, 60 ( ),, (8 7 1 1),, WWW ( ) (ID ) : WWW :, 1 11 ( ) MIPS x86 Mem[a,b], a b MIPS lw Rt,Imm(Rs) Rt = Mem[ Rs + sx(imm),4] sw Rt,Imm(Rs) Mem[ Rs + sx(imm),4] = Rt

More information

VHDL

VHDL VHDL 4 4 3 3 6 6 6 9 4 8 5 9 5 5 6 9 3 3 3 35 36 37 38 FIRIIR A/D D/A NOSCOS LSI FIR IIR x a x a a ; ; H a H T j e T j e T j T a j T a T j T a e a H e H T j sin cos sin cos T j I T j R T a e H T a e H

More information

Ê u g } }{ ~ Ê Blue Tooth Ì d LAN ÊÊÊ sèííöïõöñ~ Ê Ê y ÑÔ ÑÎ ÉÈ ÑÑÒÕ LSI Ç ÌÍÍÉÆÍ ÑÑÒÕ LSI séê ÇÍÌÉt Ê LSI Ì É ÈÍÉÆÉÌÊÎ ÈÍ séæí }ÊÑÑÒÕ LSI Ê CMOS ÒÓÏÑ

Ê u g } }{ ~ Ê Blue Tooth Ì d LAN ÊÊÊ sèííöïõöñ~ Ê Ê y ÑÔ ÑÎ ÉÈ ÑÑÒÕ LSI Ç ÌÍÍÉÆÍ ÑÑÒÕ LSI séê ÇÍÌÉt Ê LSI Ì É ÈÍÉÆÉÌÊÎ ÈÍ séæí }ÊÑÑÒÕ LSI Ê CMOS ÒÓÏÑ 14 s v à dò Ñ~ ÎÒÖÐ ÒÏÑÑÖ ÑÑÒÕ LSI Ê Ã 15 Ï ÏÒÏÐ d f Ê u g } }{ ~ Ê Blue Tooth Ì d LAN ÊÊÊ sèííöïõöñ~ Ê Ê y ÑÔ ÑÎ ÉÈ ÑÑÒÕ LSI Ç ÌÍÍÉÆÍ ÑÑÒÕ LSI séê ÇÍÌÉt Ê LSI Ì É ÈÍÉÆÉÌÊÎ ÈÍ séæí }ÊÑÑÒÕ LSI Ê CMOS ÒÓÏÑÊ

More information

PIC

PIC PIC LED12 LED11 LED10 LED9 LED8 LED7 LED6 LED5 LED4 LED3 LED2 LED1 +3V SW START SW STOP SW + - BUZZER PIC16F628A RA2 RA3 RA4 MCLR GND RB0 RB1 RB2 RB3 RB4 RB5 RB6 RB7 Vcc RA6 RA0 RA1 RA7 U1

More information

取扱説明書 -詳細版- 液晶プロジェクター CP-AW3019WNJ

取扱説明書 -詳細版- 液晶プロジェクター CP-AW3019WNJ B A C D E F K I M L J H G N O Q P Y CB/PB CR/PR COMPONENT VIDEO OUT RS-232C LAN RS-232C LAN LAN BE EF 03 06 00 2A D3 01 00 00 60 00 00 BE EF 03 06 00 BA D2 01 00 00 60 01 00 BE EF 03 06 00 19 D3 02 00

More information

電子回路I_4.ppt

電子回路I_4.ppt 電子回路 Ⅰ 第 4 回 電子回路 Ⅰ 5 1 講義内容 1. 半導体素子 ( ダイオードとトランジスタ ) 2. 基本回路 3. 増幅回路 電界効果トランジスタ (FET) 基本構造 基本動作動作原理 静特性 電子回路 Ⅰ 5 2 半導体素子 ( ダイオードとトランジスタ ) ダイオード (2 端子素子 ) トランジスタ (3 端子素子 ) バイポーラトランジスタ (Biolar) 電界効果トランジスタ

More information

Keysight Technologies CMOSイメージセンサのランダム・テレグラフ・ノイズ(RTN)評価

Keysight Technologies CMOSイメージセンサのランダム・テレグラフ・ノイズ(RTN)評価 Keysight Technologies CMOS (RTN) RTS noise measurement using the B1500A' s WGFMU Module Application Note Random Telegraph Noise, RTN MOS-FET RTN 22 nm CMOS RTN CMOS CMOS RTN RTN - IV RTN B1530A Waveform

More information

B1 Ver ( ), SPICE.,,,,. * : student : jikken. [ ] ( TarouOsaka). (, ) 1 SPICE ( SPICE. *1 OrCAD

B1 Ver ( ), SPICE.,,,,. * : student : jikken. [ ] ( TarouOsaka). (, ) 1 SPICE ( SPICE. *1 OrCAD B1 er. 3.05 (2019.03.27), SPICE.,,,,. * 1 1. 1. 1 1.. 2. : student : jikken. [ ] ( TarouOsaka). (, ) 1 SPICE ( SPICE. *1 OrCAD https://www.orcad.com/jp/resources/orcad-downloads.. 1 2. SPICE 1. SPICE Windows

More information

<95DB88E78F8A82CC8EC091D492B28DB F18D908F912E706466>

<95DB88E78F8A82CC8EC091D492B28DB F18D908F912E706466> ... 1... 2... 3... 4... 5... 6... 8... 14... 14... 14... 15... 16... 18 1... 18 2... 19 3... 20... 21... 21 1... 21 2... 23... 25 1... 25 2... 26... 27 1... 27 2... 27 ... 28 1... 28... 29 1... 29 2...

More information

DRAM SRAM SDRAM (Synchronous DRAM) DDR SDRAM (Double Data Rate SDRAM) DRAM 4 C Wikipedia 1.8 SRAM DRAM DRAM SRAM DRAM SRAM (256M 1G bit) (32 64M bit)

DRAM SRAM SDRAM (Synchronous DRAM) DDR SDRAM (Double Data Rate SDRAM) DRAM 4 C Wikipedia 1.8 SRAM DRAM DRAM SRAM DRAM SRAM (256M 1G bit) (32 64M bit) 2016.4.1 II ( ) 1 1.1 DRAM RAM DRAM DRAM SRAM RAM SRAM SRAM SRAM SRAM DRAM SRAM SRAM DRAM SRAM 1.2 (DRAM, Dynamic RAM) (SRAM, Static RAM) (RAM Random Access Memory ) DRAM 1 1 1 1 SRAM 4 1 2 DRAM 4 DRAM

More information

devicemondai

devicemondai c 2019 i 3 (1) q V I T ε 0 k h c n p (2) T 300 K (3) A ii c 2019 i 1 1 2 13 3 30 4 53 5 78 6 89 7 101 8 112 9 116 A 131 B 132 c 2019 1 1 300 K 1.1 1.5 V 1.1 qv = 1.60 10 19 C 1.5 V = 2.4 10 19 J (1.1)

More information

SystemC 2.0を用いた簡易CPUバスモデルの設計

SystemC 2.0を用いた簡易CPUバスモデルの設計 SystemC 2.0 CPU CPU CTD&SW CT-PF 2002/1/23 1 CPU BCA UTF GenericCPU IO (sc_main) 2002/1/23 2 CPU CPU CQ 1997 11 Page 207 4 Perl Verilog-HDL CPU / Verilog-HDL SystemC 2.0 (asm) ROM (test.hex) 2002/1/23

More information

i ii ( ) ( ) ( ) 462,891 525,032 502,164 230,636 CD CD 1 1 2 2 3 3 4 4 5 5 6 6 7 7 8 8 9 9 10 10 11 10 12 11 13 11 14 12 15 12 16 13 16 14 17 15 18 15 18 16 19 17 20 17 18 19

More information

137 6 1 2 3 4 5 6 138 6 139 1 2 3 4 5 6 140 6 141 1 2 1 2 142 6 3 143 1 2 144 6 145 1 2 3 4 5 146 6 147 1 1 148 6 1 2 149 1 2 1 2 150 6 151 152 6 1 2 153 1 2 3 154 1 2 6 3 155 156 6 157 158 1 6 2 159 1

More information

1516-機器センサ_J.indb

1516-機器センサ_J.indb 機器用センサ Grid-EYE Grid-EYE Grid-EYE Grid-EYE Grid-EYE 着座検知 扉開閉 洗濯機の水位検知 電子レンジ PS-A 微圧タイプ 水位検知 Grid-EYE 温度計測 位置検知 熱 軸GF 赤外線アレイセンサ Grid-EYE 設計 仕様について予告なく変更する場合があります ご購入及びご使用前に当社の技術仕様書などをお求め願い それらに基づいて購入及び使用していただきますようお願いします

More information

SystemC言語概論

SystemC言語概論 SystemC CPU S/W 2004/01/29 4 SystemC 1 SystemC 2.0.1 CPU S/W 3 ISS SystemC Co-Simulation 2004/01/29 4 SystemC 2 ISS SystemC Co-Simulation GenericCPU_Base ( ) GenericCPU_ISS GenericCPU_Prog GenericCPU_CoSim

More information

DL1010.PDF

DL1010.PDF Delta 1010 24 Bit/96 khz PCI Digital I/O Card 2 M-AUDIO 3 Rack Unit 1. Power LED LED MIDI LED LED MIDI Delta 1010 MIDI MIDI LED LED MIDI Delta 1010 MIDI MIDI MIDI MIDI MIDI MTC Delta 1010 MIDI MIDI MIDI

More information

starc_verilog_hdl pptx

starc_verilog_hdl pptx !!!!!!! ! 2.10.6.! RTL : 1! 1 2! 3.2.5.! : ! 1.7. FPGA 1 FPGA FPGA 1.5.2! 3.1.2.! 3! 3.3.1. DFT! LSI :! 2 : ! ON FPGA!!! FPGA! FPGA! !!!!! ! Verilog HDL 6 9 4! Xilinx ISE!!! RTL! CPU !! 20!! C! VHDL! Xilinx

More information

MAX IIデバイスのIEEE (JTAG)バウンダリ・スキャン・テスト

MAX IIデバイスのIEEE (JTAG)バウンダリ・スキャン・テスト 3. MAX II IEEE 49. JTAG MII54-.6 PCB PCB Bed-of-nails PCB 98 Joint Test Action Group JTAG IEEE Std. 49. BST PCB BST 3 3. IEEE Std. 49. Serial Data In Boundary-Scan Cell IC Pin Signal Serial Data Out Core

More information

- 1 - - 2 - - 3 - - 4 - - 5 - - 6 - - 7 - - 8 - - 9 - - 10 - - 11 - - 12 - - 13 - - 14 - - 15 - - 16 - - 17 - - 18 - - 19 - - 20 - - 21 - - 22 - - 23 - - 24 - - 25 - - 26 - - 27 - - 28 - - 29 - - 30 -

More information

1 122

1 122 6 1 2 3 4 5 6 1 122 PhoenixBIOS Setup Utility MainAdvancedSecurityPowerExit MainSystem DevicesSecurityBootExit System Time: [XX:XX:XX] [XX:XX:XX] System Date: [XX/XX/XX] [XX/XX/XXXX] Item Specific Help

More information

TOS7200 CD-ROM DUT PC 1.0X p.15 NEMA Vac/10 A [85-AA-0003] m : CEE7/7 : 250Vac/10 A [85-AA-0005] : GB1002 : 250Vac/10A [ ] 2016

TOS7200 CD-ROM DUT PC 1.0X p.15 NEMA Vac/10 A [85-AA-0003] m : CEE7/7 : 250Vac/10 A [85-AA-0005] : GB1002 : 250Vac/10A [ ] 2016 No. IB028901 Nov. 2016 1. 11 TOS7200 2. 14 3. 19 4. 23 5. 39 6. 49 7. 51 TOS7200 CD-ROM DUT PC 1.0X p.15 NEMA5-15 125 Vac/10 A [85-AA-0003] 1 2.5 m : CEE7/7 : 250Vac/10 A [85-AA-0005] : GB1002 : 250Vac/10A

More information

CRA3689A

CRA3689A AVIC-DRZ90 AVIC-DRZ80 2 3 4 5 66 7 88 9 10 10 10 11 12 13 14 15 1 1 0 OPEN ANGLE REMOTE WIDE SET UP AVIC-DRZ90 SOURCE OFF AV CONTROL MIC 2 16 17 1 2 0 0 1 AVIC-DRZ90 2 3 4 OPEN ANGLE REMOTE SOURCE OFF

More information

Microsoft Word - 卒業論文.doc

Microsoft Word - 卒業論文.doc 卒業研究論文 (2009 年 2 月 ) CPLD によるミニゲーム集の制作 ソフトウェア情報学部 ソフトウェア情報学科 和島研究室 ソ 17001 相坂俊 1. 背景... 4 2. 開発環境... 4 2.1 ハードウェア... 4 2.1.1 CPLD... 4 2.1.2 Terasic-Blaster... 6 2.1.3 フラットケーブル... 6 2.2 ソフトウェア... 7 2.2.1

More information

PLDとFPGA

PLDとFPGA PLDFPGA 2002/12 PLDFPGA PLD:Programmable Logic Device FPGA:Field Programmable Gate Array Field: Gate Array: LSI MPGA:Mask Programmable Gate Array» FPGA:»» 2 FPGA FPGALSI FPGA FPGA Altera, Xilinx FPGA DVD

More information

ICD-SX20/SX30/SX40

ICD-SX20/SX30/SX40 3-259-112-03(1) IC ICD-SX20/SX30/SX40 2003 Sony Corporation 2 VCCI B ... 5 1:... 8... 9 2:... 11... 13... 16 VOR... 17... 19... 19... 19... 20... 21... 26... 29... 31... 32 DPC... 33... 35 A-B... 36...

More information

CDR1000_J

CDR1000_J PROFESSIONAL AUDIO CD ORDER PROFESSIONAL AUDIO CD ORDER OPEN/ CLOSE PEAK HOLD TIME DISPLAY INPUT SELECT UTILITY LEVEL POWER MUTE UV22 REPEAT A-B SYNC AUTO INDEX INC TRACK INC 0 10 L R PHONES LEVEL ON /

More information

MS-1J/MS-1WJ(形名:MS-1/MS-1W)取扱説明書 - 詳細- 技術情報編

MS-1J/MS-1WJ(形名:MS-1/MS-1W)取扱説明書 - 詳細- 技術情報編 720 x 400 37.9 85.0 VESA TEXT 640 x 480 31.5 59.9 VESA VGA (60Hz) 640 x 480 37.9 72.8 VESA VGA (72Hz) 640 x 480 37.5 75.0 VESA VGA (75Hz) 640 x 480 43.3 85.0 VESA VGA (85Hz) 800 x 600 35.2 56.3 VESA SVGA

More information

ICD-S1/S3/S7

ICD-S1/S3/S7 3-243-485-04(1) IC ICD-S1/S3/S7 2002 Sony Corporation VCCI B 2 ... 5 1:... 8... 9 2:... 10... 12... 17... 17 /... 18... 18... 19... 23... 26... 28 DPC... 29... 31 A-B... 32... 33... 33... 34... 35 1...

More information

Express5800/320Fc-MR

Express5800/320Fc-MR 7 7 Phoenix BIOS 4.0 Release 6.0.XXXX : CPU=Pentium III Processor XXX MHz 0640K System RAM Passed 0127M Extended RAM Passed WARNING 0212: Keybord Controller Failed. : Press to resume, to setup

More information

untitled

untitled : SOU1AP2011003 2011/12/25 & Copyright 2010, Toshiba Corporation. : SOU1AP2011003 1. 2.CMOS 3.CMOS 4.CMOS 5.CMOS 6. 2 : SOU1AP2011003 3 : SOU1AP2011003 NAND,OR,, IC 1A 1 1B 2 14 13 V CC 4B 1Y 2A 2B 3 4

More information

Microsoft PowerPoint - Lecture ppt [互換モード]

Microsoft PowerPoint - Lecture ppt [互換モード] 2012-05-31 2011 年前学期 TOKYO TECH 固定小数点表現 計算機アーキテクチャ第一 (E) あまり利用されない 小数点の位置を固定する データ形式 (2) 吉瀬謙二計算工学専攻 kise_at_cs.titech.ac.jp W641 講義室木曜日 13:20-14:50-2.625 符号ビット 小数点 1 0 1 0 1 0 1 0 4 2 1 0.5 0.25 0.125

More information

r1.dvi

r1.dvi 2014 1 2014.4.10 0 / 1 / 2 / 3 Lisp 4 5 ( ) 1 (5 1 ) 5 1 1.1? 0 1 (bit sequence) 5 101 3 11 2 (binary system) 2 1000 8 1 ( ) ( )? ( 1) r1 1000 1001 r2 1002... r3 1: (memory) (address) CPU (instruction)

More information

MAX1213N EV.J

MAX1213N EV.J 19-0610; Rev 0; 7/06 DESIGNATION QTY DESCRIPTION C1 C9, C13, C15, C16, C18, C19, C20, C35 C39, C49, C52 22 C10, C27, C28, C40 4 C11, C30 2 C12, C17, C58 C71 0 C14, C33 2 C21 C24 4 C25, C26, C51, C53, C54,

More information

XC9500 ISP CPLD JTAG Port 3 JTAG Controller In-System Programming Controller 8 36 Function Block Macrocells to 8 /GCK /GSR /GTS 3 2 or 4 Blocks FastCO

XC9500 ISP CPLD JTAG Port 3 JTAG Controller In-System Programming Controller 8 36 Function Block Macrocells to 8 /GCK /GSR /GTS 3 2 or 4 Blocks FastCO - 5ns - f CNT 25MHz - 800~6,400 36~288 5V ISP - 0,000 / - / 36V8-90 8 - IEEE 49. JTAG 24mA 3.3V 5V PCI -5-7 -0 CMOS 5V FastFLASH XC9500 XC9500CPLD 0,000 / IEEE49. JTAG XC9500 36 288 800 6,400 2 XC9500

More information

COINS 5 2.1

COINS 5 2.1 COINS (0501699) 20 21 2 5 1 3 1.1....................................... 3 1.2..................................... 4 1.3....................................... 4 2 COINS 5 2.1 COINS..................................

More information

MP_slide_ja

MP_slide_ja Microprocessor(Lecture 1) Hiroshi Higashi 1 Introduction 情報 知能 学系学 実験サイト http://www.cs.tut.ac.jp/jikken/ 実験の説明資料などは Web 上で公開中 https://cs.tut.ac.jp/~higashi/class.html 実験レポートの受け取りはメールにて う higashi@tut.jp

More information

推奨されるHDLコーディング構文

推奨されるHDLコーディング構文 6. HDL QII51007-6.0.0 HDL HDL HDL HDL HDL Quartus II Volume 1 Design Recommendations for Altera Devices Quartus II EDA HDL Quartus II Volume 1 Altera Corporation 6 1 Quartus II Volume 1 LPM DSP LVDS PLL

More information

橡ボーダーライン.PDF

橡ボーダーライン.PDF 1 ( ) ( ) 2 3 4 ( ) 5 6 7 8 9 10 11 12 13 14 ( ) 15 16 17 18 19 20 ( ) 21 22 23 24 ( ) 25 26 27 28 29 30 ( ) 31 To be or not to be 32 33 34 35 36 37 38 ( ) 39 40 41 42 43 44 45 46 47 48 ( ) 49 50 51 52

More information

M51995AP/AFP データシート

M51995AP/AFP データシート お客様各位 カタログ等資料中の旧社名の扱いについて 21 年 4 月 1 日を以って NEC エレクトロニクス株式会社及び株式会社ルネサステクノロジが合併し 両社の全ての事業が当社に承継されております 従いまして 本資料中には旧社名での表記が残っておりますが 当社の資料として有効ですので ご理解の程宜しくお願い申し上げます ルネサスエレクトロニクスホームページ (http://www.renesas.com)

More information

2

2 WV-CW960 2 3 4 5 6 7 8 9 10 11 SW1 S TA RT RS485Setting SW2 DIP SW1 ON 1 2 3 4 5 6 7 8 ON 1 2 3 4 DIP SW2 12 13 q w q e 14 15 16 17 18 19 ** RS485 SETUP ** UNIT NUMBER SUB ADDRESS BAUD RATE DATA BIT PARITY

More information

,.,, 1. LED, 1450nm 1450nm 2mm 2mm LED 1mm 1mm

,.,, 1. LED, 1450nm 1450nm 2mm 2mm LED 1mm 1mm 25 SpO 2 2014 3 19 10-3A257 ,.,, 1. LED, 1450nm 1450nm 2mm 2mm LED 1mm 1mm 1 1 1.1................................. 1 1.2................................. 1 2 2 2.1............................... 2 2.2..............................

More information

VLSI工学

VLSI工学 2008//5/ () 2008//5/ () 2 () http://ssc.pe.titech.ac.jp 2008//5/ () 3!! A (WCDMA/GSM) DD DoCoMo 905iP905i 2008//5/ () 4 minisd P900i SemiConsult SDRAM, MPEG4 UIMIrDA LCD/ AF ADC/DAC IC CCD C-CPUA-CPU DSPSRAM

More information

DS

DS FUJITSU SEMICONDUCTOR DATA SHEET DS4 272 1 ASSP (AC / DC ) BIPOLAR, IC,, 2 ma, 5 V SOP 16 1 AC/DC Copyright 1986-211 FUJITSU SEMICONDUCTOR LIMITED All rights reserved 211.5 (TOP VIEW) IN1 1 16 IN2 IN1

More information

Lab GPIO_35 GPIO

Lab GPIO_35 GPIO 6,GPIO, PSoC 3/5 GPIO HW Polling and Interrupt PSoC Experiment Lab PSoC 3/5 GPIO Experiment Course Material 6 V2.02 October 15th. 2012 GPIO_35.PPT (65 Slides) Renji Mikami Renji_Mikami@nifty.com Lab GPIO_35

More information