70 likes | 242 Vues
ZERO. Controller. Datapath. IR[7:0]. D/PC. D_LD. D_CL. MEM_EN. RST. A_LD. A_CL. Clk. D_OUT[7:0]. >. IR_LD. Memory. IR_CL. Program Counter. PC_LD. D_IN[7:0]. PC_CL. A[7:0]. Instruction Register. PC_CNT. AddOrSub. R/W. EENG 201b: Introduction to Computer Engineering.
E N D
ZERO Controller Datapath IR[7:0] D/PC D_LD D_CL MEM_EN RST A_LD A_CL Clk D_OUT[7:0] > IR_LD Memory IR_CL Program Counter PC_LD D_IN[7:0] PC_CL A[7:0] Instruction Register PC_CNT AddOrSub R/W EENG 201b: Introduction to Computer Engineering Instructor: Yiorgos Makris Time and Place:Tuesday/Thursday, 1:00 p.m. – 2:15 p.m., DL 102(first class meets Tuesday, January 16th) BUILD YOUR OWN PROCESSOR ON AN FPGA!!!
The Computer Peripherals: Input: Storage: Output: Main Unit: Memory: Fan: CPU: Glue Logic:
The Central Processing Unit (CPU) Main Task: Perform Computation • Key Characteristics: • DATAPATH: A collection of fine-grained computational • capabilities (load, store, add, subtract, shift, etc) • CONTROLLER: A mechanism to arrange and apply these capabilities in a specific sequence • PROGRAMMABILITY: The ability to instruct the datapath/controller pairtoperformadesiredcomputation
Datapath/Controller Pair PROGRAMMABILITY Input Input Status Datapath Controller Control Output Output General Purpose vs. Application Specific
Controller Datapath Mathematical Abstraction: Finite State Machines • Basic Building Blocks: • Logic Gates & Flip-Flops • State Registers and Next State Components Programmability • Instruction Set Design • Addressing Modes Mathematical Abstractions: Information Representation, Boolean Functions • Basic Building Blocks: • Logic Gates & Flip-Flops • Register Transfer Level Components Putting it All Together…
Laboratory • 1) Familiarization with Tools: • Design of Datapath Circuits via Schematic Capture • And Controllers via State Machine Editing • Simulation of Datapath and Controller Circuits • 2) Processor Design & Simulation: • Design of a Toy Processor with a Minimal Instruction Set • a) Design and Simulation of the Datapath • b) Design and Simulation of the Controller • 3) Processor Construction and Implementation: • Construction and Simulation of the Datapath/Controller • Implementation on an FPGA and Interfacing to the World
Following Courses (Computer Engineering) EENG 201b: Intro to Computer Engineering EENG 348a: Digital Systems EENG 350b: Embedded Systems EENG 449b: Computer Systems EENG 425a: VLSI Design EENG 462b: Digital Systems Testing EENG 427b: Advanced VLSI Design EENG 460a: Networked Embedded Systems and Sensor Networks EENG 428b: Sensors and Biosensors Courses in Computer Science and other areas of Electrical Engineering (Signals & Systems and Microelectronics)