Experiment 2 PIC Program Execution & Built-In Self-Test.

Slides:



Advertisements
Similar presentations
Introduction to DFT Alexander Gnusin.
Advertisements

Computer Architecture
Machine cycle.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 261 Lecture 26 Logic BIST Architectures n Motivation n Built-in Logic Block Observer (BILBO) n Test.
1 EE 587 SoC Design & Test Partha Pande School of EECS Washington State University
Copyright 2005, Agrawal & BushnellVLSI Test: Lecture 21alt1 Lecture 21alt BIST -- Built-In Self-Test (Alternative to Lectures 25, 26 and 27) n Definition.
MOHD. YAMANI IDRIS/ NOORZAILY MOHAMED NOOR 1 Sequential Circuit: Register Introduction N-bit register contains n flip-flop and several logic gates and.
Execution of an instruction
Design for Testability Theory and Practice Lecture 11: BIST
Midterm Wednesday Chapter 1-3: Number /character representation and conversion Number arithmetic Combinational logic elements and design (DeMorgan’s Law)
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ input/output and clock inputs Sequence of control signal combinations.
ELEN 468 Lecture 251 ELEN 468 Advanced Logic Design Lecture 25 Built-in Self Test.
Class 9.1 Computer Architecture - HUJI Computer Architecture Class 9 Microprogramming.
9/15/09 - L25 Registers & Load Enable Copyright Joanne DeGroat, ECE, OSU1 Registers & Load Enable.
Design and Synthesis of a RISC Stored-Program Machine
The von Neumann Model – Chapter 4 COMP 2620 Dr. James Money COMP
Dr. Rabie A. Ramadan Al-Azhar University Lecture 6
Lecture 16 Today’s topics: –MARIE Instruction Decoding and Control –Hardwired control –Micro-programmed control 1.
Introduction to Computing Systems from bits & gates to C & beyond Chapter 4 The Von Neumann Model Basic components Instruction processing.
Introduction to Computing Systems from bits & gates to C & beyond The Von Neumann Model Basic components Instruction processing.
Computer Design Basics
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTEMS
Chapter 8: The Very Simple Computer
The structure COMPUTER ARCHITECTURE – The elementary educational computer.
Multiple-Cycle Hardwired Control Digital Logic Design Instructor: Kasım Sinan YILDIRIM.
Let’s look at a normal lw instruction first… 1. 2 Register file addresscontent 6 (00110) (00111) OpcodeSource register Destination register.
The von Neumann Model – Chapter 4 COMP 2620 Dr. James Money COMP
Von Neumann Model Computer Organization I 1 September 2009 © McQuain, Feng & Ribbens The Stored Program Computer 1945: John von Neumann –
Elements of Datapath for the fetch and increment The first element we need: a memory unit to store the instructions of a program and supply instructions.
CMSC 104, Lecture 061 Stored Programs A look at how programs are executed.
Designing a CPU –Reading a programs instruction from memory –Decoding the instruction –Executing the instruction –Transferring Data to/From memory / IO.
Computer Organization Instructions Language of The Computer (MIPS) 2.
Datapath and Control AddressInstruction Memory Write Data Reg Addr Register File ALU Data Memory Address Write Data Read Data PC Read Data Read Data.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
Control units In the last lecture, we introduced the basic structure of a control unit, and translated our assembly instructions into a binary representation.
MIPS Processor.
Recap – Our First Computer WR System Bus 8 ALU Carry output A B S C OUT F 8 8 To registers’ read/write and clock inputs Sequence of control signal combinations.
ECE Fall G. Byrd1 Register A register stores a multi-bit value. We use a collection of D-latches, all controlled by a common WE. When WE=1,
Computer Architecture Lecture 6.  Our implementation of the MIPS is simplified memory-reference instructions: lw, sw arithmetic-logical instructions:
CS161 – Design and Architecture of Computer Systems
Class Exercise 1B.
Hardware Testing and Designing for Testability
Chapter 4 The Von Neumann Model
Processor Organization and Architecture
VLSI Testing Lecture 14: Built-In Self-Test
CPE/EE 428/528 VLSI Design II – Intro to Testing (Part 3)
Chapter 4 The Von Neumann Model
Design of the Control Unit for Single-Cycle Instruction Execution
The Processor and Machine Language
CSCI206 - Computer Organization & Programming
Computer Science 210 Computer Organization
Functional Units.
Design of the Control Unit for One-cycle Instruction Execution
Enemies make you stronger, allies make you weaker. Frank Herbert
Topic 6 LC-3.
Systems Architecture II
The Von Neumann Model Basic components Instruction processing
The Processor Lecture 3.2: Building a Datapath with Control
Chapter 4 Instruction Set.
Enhancing Data Path M 4-bit Reg X A L U
A register design with parallel load input
Branch instructions We’ll implement branch instructions for the eight different conditions shown here. Bits 11-9 of the opcode field will indicate the.
Chapter 14 Control Unit Operation
Overview Last lecture Digital hardware systems Today
Control units In the last lecture, we introduced the basic structure of a control unit, and translated our assembly instructions into a binary representation.
Lecture 26 Logic BIST Architectures
Review: The whole processor
Basic components Instruction processing
Processor: Datapath and Control
Chapter 4 The Von Neumann Model
Presentation transcript:

Experiment 2 PIC Program Execution & Built-In Self-Test

Basic Experiment

Additional Functionality Need to add the idea of sequential logic to the design with a clock. PIC instructions are executed on a single clock cycle, this includes: 1) Performing the operation 2) Storing the result Lab 1 only performed the operation – need to store result from R output of ALU into the appropriate register (either W or in the register file RF) before the next program instruction clock cycle. Must decode destination address to determine appropriate storage location Use the current instruction set from Lab 1 with additional functionality to execute a cycle accurate PIC program out of Instruction Memory.

Additional Functionality Cont. Three additional functions – related to moving and storing registers: 1) MOVLW – Move Literal to Working Register (W) 12 bit Opcode: “1100 kkkk kkkk”, where “kkkkkkkk” is the value to write to the W Register. 2) MOVWF – Move W to one of the Memory Registers (MR) in the Register File 12 bit Opcode: “ f ffff”, where “fffff” is the address of the register to write to. 3) MOVF – Move from MR to W 12 bit Opcode: “ df ffff”, where “fffff” is the address of the register whose contents are to be written to W, IF d is ‘0’. The d = ‘1’ case will not be used.

ALU W R0 R1 R2. R31 Register File Clock dest addr Dest Decode 8 8 Load_W_en Load_R_en[31:0] R ? 8 RF W Current instruction ROM Program Sequencer Addr In Dout Clock Lab 2 Block Diagram

Extra Credit Assignment

Bonus: BILBO Implementation (Built In Logic Block Observer) Implement registers as BILBOs with added abilities: BILBO Block Diagram Offers four separate functionalities, depending on the values of (B1,B2): 1) Serial Scan Mode (0,0) 2) Pattern Generator (0,1) 3) Normal Mode (1,0) 4) MISR – Multiple Input Signature Register (1,1)

Example BILBO Usage SI – Scan In SO – Scan Out Characteristic polynomial: 1 + x + … + x n CUTs A and C: BILBO1 is MISR, BILBO2 is LFSR CUT B: BILBO1 is LFSR, BILBO2 is MISR

BILBO Serial Scan Mode B1 B2 = “00” Dark lines show enabled data paths

BILBO LFSR Pattern Generator Mode B1 B2 = “01”

BILBO in D FF (Normal) Mode B1 B2 = “10”

BILBO in MISR Mode B1 B2 = “11”