Step 3 in behavioral modeling. Use of packages.

Slides:



Advertisements
Similar presentations
1/8/ VerilogCopyright Joanne DeGroat, ECE, OSU1 Verilog Overview An overview of the Verilog HDL.
Advertisements

L23 – Adder Architectures. Adders  Carry Lookahead adder  Carry select adder (staged)  Carry Multiplexed Adder  Ref: text Unit 15 9/2/2012 – ECE 3561.
L18 – VHDL for other counters and controllers. Other counters  More examples Gray Code counter Controlled counters  Up down counter  Ref: text Unit.
VHDL. What is VHDL? VHDL: VHSIC Hardware Description Language  VHSIC: Very High Speed Integrated Circuit 7/2/ R.H.Khade.
L23 – Arithmetic Logic Units. Arithmetic Logic Units (ALU)  Modern ALU design  ALU is heart of datapath  Ref: text Unit 15 9/2/2012 – ECE 3561 Lect.
Modeling styles: 1. Structural Modeling: As a set of interconnected components (to represent structure), 2. Dataflow Modeling: As a set of concurrent assignment.
A VHDL Tutorial ENG2410. ENG241/VHDL Tutorial2 Goals Introduce the students to the following: –VHDL as Hardware description language. –How to describe.
1/8/ L3 Data Path DesignCopyright Joanne DeGroat, ECE, OSU1 ALUs and Data Paths Subtitle: How to design the data path of a processor.
1/8/ L11 Project Step 5Copyright Joanne DeGroat, ECE, OSU1 Project Step 5 Step 2 in behavioral modeling. Use of procedures.
1/8/ L7 Project Step 3Copyright Joanne DeGroat, ECE, OSU1 Project Step 4 Step 1 in transitioning to behavioral modeling. We will wire behavioral.
L26 – Datapath ALU implementation
L16 – VHDL for State Machines with binary encoding.
1/8/ L7 Project Step 3Copyright Joanne DeGroat, ECE, OSU1 Project Step 3 Structural Modeling and the Generate Statement.
L12 – VHDL Overview. VHDL Overview  HDL history and background  HDL CAD systems  HDL view of design  Low level HDL examples  Ref: text Unit 10, 17,
1/8/ Extra CreditCopyright Joanne DeGroat, ECE, OSU1 PS3xcr Extra Credit Project Modification that can be done to the datapath.
1/8/ L2 VHDL Introcution© Copyright Joanne DeGroat, ECE, OSU1 Introduction to VHDL.
L19 – Resolved Signals. Resolved Signals  What are resolved signals In systems In VHDL Resolution – Isn’t that for resolving conflicts?  Ref: text Unit.
L20 – Register Set. The 430 Register Set  Not exactly a dual ported register set, but a dual drive register set.  Ref: text Unit 10, 17, 20 9/2/2012.
1/8/ L11 Project Step 5Copyright Joanne DeGroat, ECE, OSU1 Project Step 7 Behavioral modeling of a dual ported register set.
Midterm Exam ReviewCopyright Joanne DeGroat, ECE, OSU1 Midterm Exam Notes.
1/20/ L8 Language Overview III Copyright Joanne DeGroat, ECE, OSU1 Language Overview III The finish of a grand tour of the language.
1/8/ L25 Floating Point Adder Copyright Joanne DeGroat, ECE, OSU1 IEEE Floating Point Adder Using the IEEE Floating Point Standard for an.
1/8/ L11 Project Step 5Copyright Joanne DeGroat, ECE, OSU1 Project Step 6 Step 3 in behavioral modeling. Use of packages.
MicroBaby ALU.
Subtitle: How to design the data path of a processor.
Modification that can be done to the datapath.
Chapter 2. Introduction To VHDL
Behavioral modeling of a dual ported register set.
The finish of a grand tour of the language.
Project Step 2 – A single bit slice of the ALU
Modification that can be done to the datapath.
L19 – Register Set.
The start of a grand tour of the language.
Incrementing and Decrementing
Copyright Joanne DeGroat, ECE, OSU
MicroBaby Datapath.
Copyright Joanne DeGroat, ECE, OSU
Project Step 1 Due – see webpage
L21 – Register Set.
L25 – Datapath ALU.
MicroBaby Datapath.
Copyright Joanne DeGroat, ECE, OSU
IEEE Floating Point Adder
A floating point multiplier behavior model.
Step 2 in behavioral modeling. Use of procedures.
Timing & Concurrency II
Copyright Joanne DeGroat, ECE, OSU
Beyond the ALU and Datapath. Sequential Machine Modeling exercise.
IEEE Floating Point Adder Verification
A floating point multiplier behavior model.
An overview of the Verilog HDL.
Behavioral modeling of a dual ported register set.
L7s Multiple Output example
Copyright Joanne DeGroat, ECE, OSU
Structural Modeling and the Generate Statement
Project Step 2 – A single bit slice of the ALU
A floating point multiplier behavior model.
Copyright Joanne DeGroat, ECE, OSU
Timing & Concurrency II
Step 2 in behavioral modeling. Use of procedures.
© Copyright Joanne DeGroat, ECE, OSU
Timing & Concurrency II
2's Complement Arithmetic
L25 – Final Review AU 15 Final Exam – Classroom – Journalism 300
The finish of a grand tour of the language.
Beyond the ALU and Datapath. Sequential Machine Modeling exercise.
System Controller Approach
Copyright Joanne DeGroat, ECE, OSU
Project Step 2 – A single bit slice of the ALU
Structural Modeling and the Generate Statement
Presentation transcript:

Step 3 in behavioral modeling. Use of packages. Project Step 6 Step 3 in behavioral modeling. Use of packages. 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU So far Modeled the ALU structurally with dataflow models of the leaf units. Modeled the structure exactly in the first behavioral architecture. Code=Structure 2nd Behavioral model used a combined P&K&R to choose the operation For op A have P,K,R of 1100,1111,1100 For op A AND B have 1000,1111,1100 etc. AND incorporated procedures, declared in the declarative region of the process, for the arithmetic functions. 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU This time And yes, this is yet another architecture of our ALU (yaa) Start by declaring a new ENTITY for the 8 bit ALU – (we now need one) NO LONGER HAVE P, K, AND R Now have simply alu_op Illustrated in the assignment writeup and on the next slide 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU The new ENTITY ENTITY alu_8bit_v4 IS PORT ( alu_op : IN operations; a,b : IN BIT_VECTOR(7 downto 0); Cin : IN BIT; Zout : OUT BIT_VECTOR(7 downto 0); Cout : OUT BIT); END alu_8bit_v4; Note that this ENTITY uses type operations Where is TYPE operations declared? 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU Type Operations Type OPERATIONS was declared in the declarative region of the ARCHITECTURE of the testbench. The scope of TYPE operations is limited to the ARCHITECTURE in which it is declared. So how can this ENTITY declaration use it? IT CAN’T -- SO Move the declaration to a PACKAGE that both the testbench ARCHITECTURE and this ENTITY can use it. So declare a package declarative part and package body. TYPE operations is moved to the package declarative part. 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU The Procedures The procedures for binary addition, subtraction and two’s complement are also moved to the package. What is needed in the package declarative part??? 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU The package and use. As the declaration is now in the package the testbench architecture must now have a USE clause prior to it so that it can see the declaration. USE work.step6_package.all; ARCHITECTURE test OF p6 IS … (but the ENTITY also needs TYPE operations) so where is the USE placed? BE SURE TO COMMENT OUT THE DECLARATION for TYPE operations IN THE TESTBENCH ARCHITECTURE 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU Type Operations Declare it in both the testbench and the package??? The declaration for type operations in the testbench and the package would be identical so why not just have both of them. They are different declarations and therefore a different type!! Which means it does not work. 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU Using it in the ENTITY USE work.step6_package.all; ENTITY alu_8bit_v4 IS … PORT ( …………. The USE clause prior to the ENTITY makes all the declarations in this package visible to the ENTITY and all ARCHITECTURES of the ENTITY. 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU The Procedures Also move the procedures declared in the process declarative region out to the package body. Add declarations for them in the package declarative part. (but the code from before goes in the package body) The declaration can be cut and pasted. 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU

Copyright 2006 - Joanne DeGroat, ECE, OSU A final modification Modify the case statement to switch on opu_op instead of the concatenated PKR value which is no longer even available. And once again Move the declaration for TYPE operations to the package and comment it out in the testbench architecture 1/8/2007 - L11 Project Step 5 Copyright 2006 - Joanne DeGroat, ECE, OSU