SlideShare a Scribd company logo
1 of 28
Download to read offline
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
1 etienne.sicard@insa-toulouse.fr 07/01/05
! " # $%
#
1. Introduction
% % ! &' % %& # (
# # & ) ! *+ ,--. ! # * /
0 # !
# 1# 2 31 ! ,
4
#
&
&
'535(
• #
• 6
*
3
7 3
! # * # # ,
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
2 etienne.sicard@insa-toulouse.fr 07/01/05
* * 8
& ! 9999 ,,,,
! 1
99991 # ! !
$ #
&
5# ! : ! ! # !1
! # 1!
535#
#
$%# 4 2
' # (1 #
$ #
# # # !
3 #
$ #
4 4 !
; < ' (
7
; <= <, ' # (
$ #
! ! $ #
7 7 ! ! #
4 1 ! !
!
! ! *
! !
$ #
# # 1 / # 0' ( # * ! > *
! # 1 ! / # 0 ? 3 1 #
@ 1 $ # ! #
! # ! > ! # #
# *1 ! !
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
3 etienne.sicard@insa-toulouse.fr 07/01/05
4
#
&
&
'535(
#
*
3
7 3
# 8 * ! #
# & ! ' 4 (
#
# & ! '? ! # (
#
# ! ! 3 #
! "
2. Instructions
# # $ # 1 ,A !!
#
No Operation (NOP=0000)
B 7 !! C 1
# * *
Addition (ADD=0001)
! 1
! ! # ? 3 1 ;>1
/ .0 ; <.1 ;><. ! ! D
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
4 etienne.sicard@insa-toulouse.fr 07/01/05
Subtraction (SUB=0010)
! # 1
# ! ! #
Get Input (In=0011)
!
Give Output (OUT=0100)
! # 8
* # ! # /E 7 0
Load Instruction (LDA=0101)
6 ! / 0 ? 3 1 6 - ! -
',99, # ! (
3. Program Memory
5# 1 # 3
5# ! # !1 ! #
! />01 /,01
# ! . 5 1 5
F ! # * @
1 # # ! #
#
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
5 etienne.sicard@insa-toulouse.fr 07/01/05
G A D $ . > , 9
# $% & # $% &
6 > 9,9, H99,9 93D>
, 99,9 H999, 93>,
74 9,99 H9999 93$9
B7& 9999 H9999 9399
' ! () * * %
# # # + *) # , * * -# # ./ "
//"01 #203
' * !$ ) (,( + &
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
6 etienne.sicard@insa-toulouse.fr 07/01/05
4. Executing the instructions
Introducing the micro-instructions
! 3 # 3 !
# ! !! 1 ! $ *
# ! /6 >0 !
/6 >0 1 91,1> $
' %
4
$ * &
, 4
$ * &
2
4
0 # % *
# , #
2
% , # , * # 5
3 ! 1 ! 1 # ! !
! 2 ! I
& , ! #
& >
& . 3 , 1
* ! ! 3
& $ 3 > * !
3
% , # *
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
7 etienne.sicard@insa-toulouse.fr 07/01/05
4
#
&
&
'535(
& ,
3
7 3
. #
& ,
4
#
&
&
'535(
& >
3
7 3
#
& >
6 , * 4
No Operation (NOP=0000)
? 2 ' ;,(1 !
'6 ;,( , '? D( >1
1 JB 7 I !!
1 3 '& . $( !
3
$
& , 203
3 3 ' 3 %
. #
7 #
3 8
6 203 # , 4
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
8 etienne.sicard@insa-toulouse.fr 07/01/05
Addition (ADD=0001)
! # $%# !
2 1 3 # 1 *
# '& $(1 ! #
! # * ! * $1 !
A
4
#
&
&
'535(
& .
3
7 3
& .
4
#
&
&
'535(
& $
3
7 3
& $
## 9
$ //&
. #
3
$
& , .0 /
3 3 ' 3 %
. #
7 #
3 8
. #:
. #
1*#
5 , * # //
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
9 etienne.sicard@insa-toulouse.fr 07/01/05
Subtraction (SUB=0010)
3 ! # !
!! / #0 91 / # 0
Get Input (In=0011)
! . '? A( $1
4
#
&
&
'535(
& .
7
3
& .
4
#
&
&
'535(
& $
3
7 3
& $
3
$
& , 2
3 3 ' 3 %
. #
7 #
3 8
. #
1*#
; , * # 2
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
10 etienne.sicard@insa-toulouse.fr 07/01/05
Give Output (OUT=0100)
! ! # .
8 * # * !
$
4
#
&
&
'535(
& .
7 3
& .
4
#
&
&
'535(
& $
3
7 3
& $
( , * # 01
Load Instruction (LDA=0101)
! $%# ! 6 ?
3 1 6 - ! -',99, # ! ( ! G1
! ! # ! # !
1 ! ,99, $
4
#
&
&
'535(
& .
3
7 3
& .
4
#
&
&
'535(
& $
3
7 3
& $
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
11 etienne.sicard@insa-toulouse.fr 07/01/05
3
$
& , .0 /
3 3 ' 3 %
. #
7 #
3 8
. #
1*#
< # * ' , # * +/ * %"
* -+
5. Basic Block design
@ ! #%# * !
Accumulator A
# ! % % #
9 . ! 4 1 ! # !
# / # 0 @ # #
/ 0 8 ! ! 'C 1 * # ( % ! !
*
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
12 etienne.sicard@insa-toulouse.fr 07/01/05
= #
$ ) + &
Accumulator B
! 1 # ! % %
# 9 . ! 4 / 0 8
! ! 'C 1 * # ( % ! ! *
: $ )
:&+
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
13 etienne.sicard@insa-toulouse.fr 07/01/05
Add/subtract Block
# ! #% 1 # # K I
! ! !L7 ! / 4 0 3 ! / 0
1 ! ,>
## $ ) ## + &
$%# ! 2 ! ! % ! ,.
! !
# # ' % ( ! % 1 #
:
• >I !
• ,
7 3 1 # ! # 1
# 1 #% / 0 @ / 0 2 91 9 ! 1 1
, ! 2 1/ #0;9 ! ! 1
' (1 / #0;, ! != ' # (
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
14 etienne.sicard@insa-toulouse.fr 07/01/05
' !* // # 1: * $ )
1 + &
1 !
2 !
1 ! ,$ * # 1
# #
! ! 2 # :
• % 1 9 ' ! (1
' ;91 ;9( B *
# /= 0 ,
• 6 * * # / 01! 3 . */6 0
! * . ! !
*
• 6 * * # / 01! 3 > */6 0
! * > ! !
* < / #0 # ! 91
C / # 0 9
• / # 0 , /D01 ! ,$
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
15 etienne.sicard@insa-toulouse.fr 07/01/05
% ": # // # 1:
$ )7 7 : +8>&
The input register
!.% # !! 1 ! ,D ! %
# !
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
16 etienne.sicard@insa-toulouse.fr 07/01/05
6 * $ ) 7 +8>&
The output Register
# % # 7 ! *1
! * .1
1 8 ! ! 1 B B *
! *1 ! ,A
' %
01 4
$ * &
01 , 4
$ * &
/ # 01
#
8
5 * # # * '
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
17 etienne.sicard@insa-toulouse.fr 07/01/05
; * $ )0 7 +8>&
A manual microprocessor
1 # / % 0
1 1 ! ! ,5 !
! ' ( ' 7 ( ! ! 1 #
' # (1 # 3 ! *1 !
* # 'D ( ! #
! :
•
•
• ! !
# ' # / 01 # / 0( #
* # 3 ! ,51 # #
# * # !
3 1 # !! 1 / *01
/ 0 B
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
18 etienne.sicard@insa-toulouse.fr 07/01/05
( : # $ ? +8>&
< !) # * $ )7 7 : 0 +8>&
The Phase Generator
! J I ! # 1
# ? 1
! & 9 & .1 ! *
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
19 etienne.sicard@insa-toulouse.fr 07/01/05
# # / 0 ! #
L7 1 ! >9
= * $ )7 8 %+ &
* $ )7 8 %+ &
@ # ' (1 2
Program Counter 0 to 15
! '? >>( 1 9 1 !
1 1 3
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
20 etienne.sicard@insa-toulouse.fr 07/01/05
4
#
&
&
'535(
3
7 3
* ** * ! ## -
7 # ! 9 ,D % % 1 #
1# * # 1
!
> !
2 1 3 3 ,1
' * +8 # !# * " #
$ )8 5+8>&
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
21 etienne.sicard@insa-toulouse.fr 07/01/05
The Instruction Register
! 5%# ! :
! # !1 ! #
# ! % # !! >.1 #
# ! 1 ! % 1
# # # !
1 # ! #
G A D $ . > , 9
# $% & # $% &
% ! # * # * $.
& # * $** &$ ) 7 +8>&
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
22 etienne.sicard@insa-toulouse.fr 07/01/05
The MicroInstruction Controler
J I !
J # I J I ! !1
! ! B ? 3 1 9999
B 1 B7& B 9 ,
# !
! 1 ! 1 , ! 1 * 9
#
6 4 *
The Complete Microprocessor
#% #%# * #
# # ! >A
C 1 * / 0 3
! 1
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
23 etienne.sicard@insa-toulouse.fr 07/01/05
3 ! >A1 # :
6 , 9,9, H999, 93D,
> 99,9 H99,9 93>>
74 9,99 H9999 93$9
5 # # * !
'>(
*
',(
'.( $
'D(
'$( ?
'A(
#
'G(
'5( 7
#
5 * #! $ ) * +8>&
7 1 :
• % ',(
• * *'>(
• ! *1 # !! 9 ,1 >1 .
# * 9 '.(
• >1
'$(1 /6 '9,9,(0
• F 'D(
• ! ! # 'A(
• ! 2 # 1 * # # 'G(
• ! /74 0 1 1 '5(
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
24 etienne.sicard@insa-toulouse.fr 07/01/05
; ## # * * * # 5 $ )
* +8>&
Memory Move
7 ! B7 # ' 7 (
! ! 1 @
I # ! ! ! M !
# ! ! !
7 ! ! 1 !
! 2 : .1 1
# # !
# 1 ! !! #
! >5
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
25 etienne.sicard@insa-toulouse.fr 07/01/05
4
#
&
&
'535(
&
3
7 3
: 7 #
4
#
&
&
'535(
&
3
7 3
: 7 # #
3
$& ,
$&/
* !
$'& !
##
( # ! * # 0
1 7 # 8 # # '@
# (1 $%# # ! 1
& K 3
Physical Implementation
Description of the design flow
# # C1
! # 7@ B !
! >- @ 67E ! "
→→→→ # $ " 3 ! %&%1 67E 1
! 7@ B 1 !
7@ B 1 →→→→ # $ "
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
26 etienne.sicard@insa-toulouse.fr 07/01/05
' !(
' %&%(
C.
7@ B
' '(
< 8 * # * " 7 .0@
VERILOG translation
# 1 .,> # !
! #
% 67E
'= A ! # 7 .0@
# ## *
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
27 etienne.sicard@insa-toulouse.fr 07/01/05
' * - 7 .0@ # * %) * $- )
* +8>&
! 1 %# 535# *
3 # # !535 #
! .9 !
# # J@ I 'B,(
' # - ! * ! # - $- ) ! + &
'. 5 (
5#
A VERY SIMPLE MICROPROCESSOR JANUARY 2005
28 etienne.sicard@insa-toulouse.fr 07/01/05
Conclusion
1 $%# # 1 D #
! ! # 3 3 1
3 # 1 ! 1
#
References
),+ & 1N / 01 1E % 1 B 9%9>%
599D-$%D1,-->14

More Related Content

What's hot

Celebracionenviomisionerosjavier
CelebracionenviomisionerosjavierCelebracionenviomisionerosjavier
Celebracionenviomisionerosjavier
Diego Patricio
 
Chinese Pork Meatballs Recipe _ Allrecipes.pdf
Chinese Pork Meatballs Recipe _ Allrecipes.pdfChinese Pork Meatballs Recipe _ Allrecipes.pdf
Chinese Pork Meatballs Recipe _ Allrecipes.pdf
CK Tan
 
แนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจ
แนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจแนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจ
แนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจ
Marr Ps
 
Jesus e a outra pessoa
Jesus e a outra pessoaJesus e a outra pessoa
Jesus e a outra pessoa
José Silva
 
Place gouvernance si_dans_gouvernance_generale
Place gouvernance si_dans_gouvernance_generalePlace gouvernance si_dans_gouvernance_generale
Place gouvernance si_dans_gouvernance_generale
AHMED ENNAJI
 
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗ
Dimitris Psounis
 
Lenguaje interior azcoaga je
Lenguaje interior azcoaga jeLenguaje interior azcoaga je
Lenguaje interior azcoaga je
landdy gonzalez
 
Aportes a la patología neurológica del lenguaje
Aportes a la patología neurológica del lenguajeAportes a la patología neurológica del lenguaje
Aportes a la patología neurológica del lenguaje
landdy gonzalez
 
Giao trinh c c++
Giao trinh c c++Giao trinh c c++
Giao trinh c c++
Hồ Lợi
 

What's hot (18)

Celebracionenviomisionerosjavier
CelebracionenviomisionerosjavierCelebracionenviomisionerosjavier
Celebracionenviomisionerosjavier
 
Chinese Pork Meatballs Recipe _ Allrecipes.pdf
Chinese Pork Meatballs Recipe _ Allrecipes.pdfChinese Pork Meatballs Recipe _ Allrecipes.pdf
Chinese Pork Meatballs Recipe _ Allrecipes.pdf
 
แนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจ
แนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจแนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจ
แนวข้อสอบเทคโนโลยี่เบื้องต้นนักเรียนนายสิบตำรวจ
 
Jesus e a outra pessoa
Jesus e a outra pessoaJesus e a outra pessoa
Jesus e a outra pessoa
 
Place gouvernance si_dans_gouvernance_generale
Place gouvernance si_dans_gouvernance_generalePlace gouvernance si_dans_gouvernance_generale
Place gouvernance si_dans_gouvernance_generale
 
éValuationde la toxicité des thérapies ciblées chez les patients traités pour...
éValuationde la toxicité des thérapies ciblées chez les patients traités pour...éValuationde la toxicité des thérapies ciblées chez les patients traités pour...
éValuationde la toxicité des thérapies ciblées chez les patients traités pour...
 
Liminar - Contribuições Previdenciárias
Liminar - Contribuições PrevidenciáriasLiminar - Contribuições Previdenciárias
Liminar - Contribuições Previdenciárias
 
กิจกรรมเพื่อสังคมและสาธารณประโยชน์ ชั้น ม.1/5 โรงเรียนหอวัง ปีการศึกษา 2557
กิจกรรมเพื่อสังคมและสาธารณประโยชน์ ชั้น ม.1/5 โรงเรียนหอวัง ปีการศึกษา 2557กิจกรรมเพื่อสังคมและสาธารณประโยชน์ ชั้น ม.1/5 โรงเรียนหอวัง ปีการศึกษา 2557
กิจกรรมเพื่อสังคมและสาธารณประโยชน์ ชั้น ม.1/5 โรงเรียนหอวัง ปีการศึกษา 2557
 
Decreto 614
Decreto 614Decreto 614
Decreto 614
 
Terrain - presentation
Terrain - presentationTerrain - presentation
Terrain - presentation
 
Open Government Partnership: A Chance for Reform
Open Government Partnership: A Chance for ReformOpen Government Partnership: A Chance for Reform
Open Government Partnership: A Chance for Reform
 
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗ
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ ΣΕ C - ΜΑΘΗΜΑ 2 - ΕΚΤΥΠΩΣΗ
 
Lenguaje interior azcoaga je
Lenguaje interior azcoaga jeLenguaje interior azcoaga je
Lenguaje interior azcoaga je
 
พระราชบัญญัติปรับปรุงกระทรวง ทบวง กรม พ.ศ. 2545 แก้ไขถึงฉบับที่ 10 พ.ศ. 2556
พระราชบัญญัติปรับปรุงกระทรวง ทบวง กรม พ.ศ. 2545  แก้ไขถึงฉบับที่ 10  พ.ศ. 2556พระราชบัญญัติปรับปรุงกระทรวง ทบวง กรม พ.ศ. 2545  แก้ไขถึงฉบับที่ 10  พ.ศ. 2556
พระราชบัญญัติปรับปรุงกระทรวง ทบวง กรม พ.ศ. 2545 แก้ไขถึงฉบับที่ 10 พ.ศ. 2556
 
Curso de bateria
Curso de bateriaCurso de bateria
Curso de bateria
 
Aportes a la patología neurológica del lenguaje
Aportes a la patología neurológica del lenguajeAportes a la patología neurológica del lenguaje
Aportes a la patología neurológica del lenguaje
 
Giao trinh c c++
Giao trinh c c++Giao trinh c c++
Giao trinh c c++
 
ARM7-Lpc2148 gpio programming
ARM7-Lpc2148 gpio programmingARM7-Lpc2148 gpio programming
ARM7-Lpc2148 gpio programming
 

More from Brit4 (14)

Littelfuse fuseology selection_guide.pdf
Littelfuse fuseology selection_guide.pdfLittelfuse fuseology selection_guide.pdf
Littelfuse fuseology selection_guide.pdf
 
Io ct part1-04robotics
Io ct part1-04roboticsIo ct part1-04robotics
Io ct part1-04robotics
 
U proc ovw
U proc ovwU proc ovw
U proc ovw
 
Michelson
MichelsonMichelson
Michelson
 
Ch16
Ch16Ch16
Ch16
 
Superconductivity
SuperconductivitySuperconductivity
Superconductivity
 
Defects
DefectsDefects
Defects
 
06479 g sample_buynow
06479 g sample_buynow06479 g sample_buynow
06479 g sample_buynow
 
Tutorial 8 frequency counter
Tutorial 8   frequency counterTutorial 8   frequency counter
Tutorial 8 frequency counter
 
Electrical measuring-instruments
Electrical measuring-instrumentsElectrical measuring-instruments
Electrical measuring-instruments
 
Mc ty-cubicequations-2009-1
Mc ty-cubicequations-2009-1Mc ty-cubicequations-2009-1
Mc ty-cubicequations-2009-1
 
First Aid Basics
First Aid BasicsFirst Aid Basics
First Aid Basics
 
Sgr article unesco_engr_book
Sgr article unesco_engr_bookSgr article unesco_engr_book
Sgr article unesco_engr_book
 
Sgr article unesco_engr_book
Sgr article unesco_engr_bookSgr article unesco_engr_book
Sgr article unesco_engr_book
 

Very simple microprocessor

  • 1. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 1 etienne.sicard@insa-toulouse.fr 07/01/05 ! " # $% # 1. Introduction % % ! &' % %& # ( # # & ) ! *+ ,--. ! # * / 0 # ! # 1# 2 31 ! , 4 # & & '535( • # • 6 * 3 7 3 ! # * # # ,
  • 2. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 2 etienne.sicard@insa-toulouse.fr 07/01/05 * * 8 & ! 9999 ,,,, ! 1 99991 # ! ! $ # & 5# ! : ! ! # !1 ! # 1! 535# # $%# 4 2 ' # (1 # $ # # # # ! 3 # $ # 4 4 ! ; < ' ( 7 ; <= <, ' # ( $ # ! ! $ # 7 7 ! ! # 4 1 ! ! ! ! ! * ! ! $ # # # 1 / # 0' ( # * ! > * ! # 1 ! / # 0 ? 3 1 # @ 1 $ # ! # ! # ! > ! # # # *1 ! !
  • 3. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 3 etienne.sicard@insa-toulouse.fr 07/01/05 4 # & & '535( # * 3 7 3 # 8 * ! # # & ! ' 4 ( # # & ! '? ! # ( # # ! ! 3 # ! " 2. Instructions # # $ # 1 ,A !! # No Operation (NOP=0000) B 7 !! C 1 # * * Addition (ADD=0001) ! 1 ! ! # ? 3 1 ;>1 / .0 ; <.1 ;><. ! ! D
  • 4. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 4 etienne.sicard@insa-toulouse.fr 07/01/05 Subtraction (SUB=0010) ! # 1 # ! ! # Get Input (In=0011) ! Give Output (OUT=0100) ! # 8 * # ! # /E 7 0 Load Instruction (LDA=0101) 6 ! / 0 ? 3 1 6 - ! - ',99, # ! ( 3. Program Memory 5# 1 # 3 5# ! # !1 ! # ! />01 /,01 # ! . 5 1 5 F ! # * @ 1 # # ! # #
  • 5. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 5 etienne.sicard@insa-toulouse.fr 07/01/05 G A D $ . > , 9 # $% & # $% & 6 > 9,9, H99,9 93D> , 99,9 H999, 93>, 74 9,99 H9999 93$9 B7& 9999 H9999 9399 ' ! () * * % # # # + *) # , * * -# # ./ " //"01 #203 ' * !$ ) (,( + &
  • 6. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 6 etienne.sicard@insa-toulouse.fr 07/01/05 4. Executing the instructions Introducing the micro-instructions ! 3 # 3 ! # ! !! 1 ! $ * # ! /6 >0 ! /6 >0 1 91,1> $ ' % 4 $ * & , 4 $ * & 2 4 0 # % * # , # 2 % , # , * # 5 3 ! 1 ! 1 # ! ! ! 2 ! I & , ! # & > & . 3 , 1 * ! ! 3 & $ 3 > * ! 3 % , # *
  • 7. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 7 etienne.sicard@insa-toulouse.fr 07/01/05 4 # & & '535( & , 3 7 3 . # & , 4 # & & '535( & > 3 7 3 # & > 6 , * 4 No Operation (NOP=0000) ? 2 ' ;,(1 ! '6 ;,( , '? D( >1 1 JB 7 I !! 1 3 '& . $( ! 3 $ & , 203 3 3 ' 3 % . # 7 # 3 8 6 203 # , 4
  • 8. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 8 etienne.sicard@insa-toulouse.fr 07/01/05 Addition (ADD=0001) ! # $%# ! 2 1 3 # 1 * # '& $(1 ! # ! # * ! * $1 ! A 4 # & & '535( & . 3 7 3 & . 4 # & & '535( & $ 3 7 3 & $ ## 9 $ //& . # 3 $ & , .0 / 3 3 ' 3 % . # 7 # 3 8 . #: . # 1*# 5 , * # //
  • 9. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 9 etienne.sicard@insa-toulouse.fr 07/01/05 Subtraction (SUB=0010) 3 ! # ! !! / #0 91 / # 0 Get Input (In=0011) ! . '? A( $1 4 # & & '535( & . 7 3 & . 4 # & & '535( & $ 3 7 3 & $ 3 $ & , 2 3 3 ' 3 % . # 7 # 3 8 . # 1*# ; , * # 2
  • 10. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 10 etienne.sicard@insa-toulouse.fr 07/01/05 Give Output (OUT=0100) ! ! # . 8 * # * ! $ 4 # & & '535( & . 7 3 & . 4 # & & '535( & $ 3 7 3 & $ ( , * # 01 Load Instruction (LDA=0101) ! $%# ! 6 ? 3 1 6 - ! -',99, # ! ( ! G1 ! ! # ! # ! 1 ! ,99, $ 4 # & & '535( & . 3 7 3 & . 4 # & & '535( & $ 3 7 3 & $
  • 11. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 11 etienne.sicard@insa-toulouse.fr 07/01/05 3 $ & , .0 / 3 3 ' 3 % . # 7 # 3 8 . # 1*# < # * ' , # * +/ * %" * -+ 5. Basic Block design @ ! #%# * ! Accumulator A # ! % % # 9 . ! 4 1 ! # ! # / # 0 @ # # / 0 8 ! ! 'C 1 * # ( % ! ! *
  • 12. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 12 etienne.sicard@insa-toulouse.fr 07/01/05 = # $ ) + & Accumulator B ! 1 # ! % % # 9 . ! 4 / 0 8 ! ! 'C 1 * # ( % ! ! * : $ ) :&+
  • 13. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 13 etienne.sicard@insa-toulouse.fr 07/01/05 Add/subtract Block # ! #% 1 # # K I ! ! !L7 ! / 4 0 3 ! / 0 1 ! ,> ## $ ) ## + & $%# ! 2 ! ! % ! ,. ! ! # # ' % ( ! % 1 # : • >I ! • , 7 3 1 # ! # 1 # 1 #% / 0 @ / 0 2 91 9 ! 1 1 , ! 2 1/ #0;9 ! ! 1 ' (1 / #0;, ! != ' # (
  • 14. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 14 etienne.sicard@insa-toulouse.fr 07/01/05 ' !* // # 1: * $ ) 1 + & 1 ! 2 ! 1 ! ,$ * # 1 # # ! ! 2 # : • % 1 9 ' ! (1 ' ;91 ;9( B * # /= 0 , • 6 * * # / 01! 3 . */6 0 ! * . ! ! * • 6 * * # / 01! 3 > */6 0 ! * > ! ! * < / #0 # ! 91 C / # 0 9 • / # 0 , /D01 ! ,$
  • 15. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 15 etienne.sicard@insa-toulouse.fr 07/01/05 % ": # // # 1: $ )7 7 : +8>& The input register !.% # !! 1 ! ,D ! % # !
  • 16. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 16 etienne.sicard@insa-toulouse.fr 07/01/05 6 * $ ) 7 +8>& The output Register # % # 7 ! *1 ! * .1 1 8 ! ! 1 B B * ! *1 ! ,A ' % 01 4 $ * & 01 , 4 $ * & / # 01 # 8 5 * # # * '
  • 17. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 17 etienne.sicard@insa-toulouse.fr 07/01/05 ; * $ )0 7 +8>& A manual microprocessor 1 # / % 0 1 1 ! ! ,5 ! ! ' ( ' 7 ( ! ! 1 # ' # (1 # 3 ! *1 ! * # 'D ( ! # ! : • • • ! ! # ' # / 01 # / 0( # * # 3 ! ,51 # # # * # ! 3 1 # !! 1 / *01 / 0 B
  • 18. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 18 etienne.sicard@insa-toulouse.fr 07/01/05 ( : # $ ? +8>& < !) # * $ )7 7 : 0 +8>& The Phase Generator ! J I ! # 1 # ? 1 ! & 9 & .1 ! *
  • 19. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 19 etienne.sicard@insa-toulouse.fr 07/01/05 # # / 0 ! # L7 1 ! >9 = * $ )7 8 %+ & * $ )7 8 %+ & @ # ' (1 2 Program Counter 0 to 15 ! '? >>( 1 9 1 ! 1 1 3
  • 20. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 20 etienne.sicard@insa-toulouse.fr 07/01/05 4 # & & '535( 3 7 3 * ** * ! ## - 7 # ! 9 ,D % % 1 # 1# * # 1 ! > ! 2 1 3 3 ,1 ' * +8 # !# * " # $ )8 5+8>&
  • 21. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 21 etienne.sicard@insa-toulouse.fr 07/01/05 The Instruction Register ! 5%# ! : ! # !1 ! # # ! % # !! >.1 # # ! 1 ! % 1 # # # ! 1 # ! # G A D $ . > , 9 # $% & # $% & % ! # * # * $. & # * $** &$ ) 7 +8>&
  • 22. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 22 etienne.sicard@insa-toulouse.fr 07/01/05 The MicroInstruction Controler J I ! J # I J I ! !1 ! ! B ? 3 1 9999 B 1 B7& B 9 , # ! ! 1 ! 1 , ! 1 * 9 # 6 4 * The Complete Microprocessor #% #%# * # # # ! >A C 1 * / 0 3 ! 1
  • 23. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 23 etienne.sicard@insa-toulouse.fr 07/01/05 3 ! >A1 # : 6 , 9,9, H999, 93D, > 99,9 H99,9 93>> 74 9,99 H9999 93$9 5 # # * ! '>( * ',( '.( $ 'D( '$( ? 'A( # 'G( '5( 7 # 5 * #! $ ) * +8>& 7 1 : • % ',( • * *'>( • ! *1 # !! 9 ,1 >1 . # * 9 '.( • >1 '$(1 /6 '9,9,(0 • F 'D( • ! ! # 'A( • ! 2 # 1 * # # 'G( • ! /74 0 1 1 '5(
  • 24. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 24 etienne.sicard@insa-toulouse.fr 07/01/05 ; ## # * * * # 5 $ ) * +8>& Memory Move 7 ! B7 # ' 7 ( ! ! 1 @ I # ! ! ! M ! # ! ! ! 7 ! ! 1 ! ! 2 : .1 1 # # ! # 1 ! !! # ! >5
  • 25. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 25 etienne.sicard@insa-toulouse.fr 07/01/05 4 # & & '535( & 3 7 3 : 7 # 4 # & & '535( & 3 7 3 : 7 # # 3 $& , $&/ * ! $'& ! ## ( # ! * # 0 1 7 # 8 # # '@ # (1 $%# # ! 1 & K 3 Physical Implementation Description of the design flow # # C1 ! # 7@ B ! ! >- @ 67E ! " →→→→ # $ " 3 ! %&%1 67E 1 ! 7@ B 1 ! 7@ B 1 →→→→ # $ "
  • 26. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 26 etienne.sicard@insa-toulouse.fr 07/01/05 ' !( ' %&%( C. 7@ B ' '( < 8 * # * " 7 .0@ VERILOG translation # 1 .,> # ! ! # % 67E '= A ! # 7 .0@ # ## *
  • 27. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 27 etienne.sicard@insa-toulouse.fr 07/01/05 ' * - 7 .0@ # * %) * $- ) * +8>& ! 1 %# 535# * 3 # # !535 # ! .9 ! # # J@ I 'B,( ' # - ! * ! # - $- ) ! + & '. 5 ( 5#
  • 28. A VERY SIMPLE MICROPROCESSOR JANUARY 2005 28 etienne.sicard@insa-toulouse.fr 07/01/05 Conclusion 1 $%# # 1 D # ! ! # 3 3 1 3 # 1 ! 1 # References ),+ & 1N / 01 1E % 1 B 9%9>% 599D-$%D1,-->14