Lecture 16 PicoBlaze I/O & Interrupt Interface

Slides:



Advertisements
Similar presentations
Tutorial 2 Sequential Logic. Registers A register is basically a D Flip-Flop A D Flip Flop has 3 basic ports. D, Q, and Clock.
Advertisements

Lecture 16 PicoBlaze Instruction Set & Assembler Directives
VHDL 8 Practical example
EXTERNAL COMMUNICATIONS DESIGNING AN EXTERNAL 3 BYTE INTERFACE Mark Neil - Microprocessor Course 1 External Memory & I/O.
TK2633 Introduction to Parallel Data Interfacing DR MASRI AYOB.
Processor System Architecture
PicoBlaze CPLD Microcontroller
ECE 448 – FPGA and ASIC Design with VHDL Lecture 13 PicoBlaze I/O & Interrupt Interface.
6. The CPU and Memory Chapt. 7.
Chapter 17 Microprocessor Fundamentals William Kleitz Digital Electronics with VHDL, Quartus® II Version Copyright ©2006 by Pearson Education, Inc. Upper.
1 Sequential Circuits Registers and Counters. 2 Master Slave Flip Flops.
Khaled A. Al-Utaibi  Intel Peripheral Controller Chips  Basic Description of the 8255  Pin Configuration of the 8255  Block Diagram.
ECE 448 – FPGA and ASIC Design with VHDL Lecture 12 PicoBlaze Overview.
ECE 448 – FPGA and ASIC Design with VHDL Lecture 12 PicoBlaze Overview.
The FPX KCPSM Module Exercise 1 Henry Fu The FPX KCPSM Module Exercise: Network Data Encryption / Decryption Using ROT13 Algorithm Henry Fu Washington.
Input-Output Organization
ECE 448 – FPGA and ASIC Design with VHDL Lecture 19 PicoBlaze Interrupt Interface & Assembly Code Development.
PROGRAMMABLE PERIPHERAL INTERFACE -8255
CDA 4253 FPGA System Design PicoBlaze Instruction Set Hao Zheng Comp Sci & Eng U of South Florida.
THE MICROPROCESSOR A microprocessor is a single chip of silicon that performs all of the essential functions of a computer central processor unit (CPU)
CDA 4253 FPGA System Design The PicoBlaze Microcontroller
ECE 448: Lab 6 Using PicoBlaze Fast Sorting. Part 1: Introduction to Lab 6 Part 2: Instruction Set of PicoBlaze-6 Part 3: Hands-on Session: OpenPICIDE.
Picoblaze Overview EENG Introduction 8-bit microcontroller for Xilinx devices Soft Core – Soft Processor 5% of the resources of spartan 3 (3S200.
Lecture 13 PicoBlaze I/O & Interrupt Interface Example of Assembly Language Routine ECE 448 – FPGA and ASIC Design with VHDL.
Spring EE 437 Lillevik 437s06-l5 University of Portland School of Engineering Advanced Computer Architecture Lecture 5 Slave bus agent ROM example.
ECE 545—Digital System Design with VHDL Lecture 1
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
CDA 4253 FPGA System Design PicoBlaze Interface Hao Zheng Comp Sci & Eng U of South Florida.
1 Chapter 1 Basic Structures Of Computers. Computer : Introduction A computer is an electronic machine,devised for performing calculations and controlling.
CDA 4253 FPGA System Design PicoBlaze Interface Hao Zheng Comp Sci & Eng U of South Florida.
Lecture 18 PicoBlaze Instruction Set & Assembler Directives
Temperature Measurement
Class Exercise 1B.
Basic Computer Organization and Design
Everybody.
RTL Design Methodology Transition from Pseudocode & Interface
Registers and Counters
Lecture 15 PicoBlaze Overview
Hardware Source: ttp:// under
Introduction of microprocessor
Basics of digital systems
RTL Design Methodology
An Introduction to Microprocessor Architecture using intel 8085 as a classic processor
Chapter 11 Sequential Circuits.
Advisor: Prof. Gandhi Puvvada
Interfacing Memory Interfacing.
Lecture 14 PicoBlaze Overview
Number Representations and Basic Processor Architecture
8255.
Lecture 16 PicoBlaze Overview
Introduction to ModelSim Implementing Sequential
Advisor: Prof. Gandhi Puvvada
Lecture 18 PicoBlaze I/O Interface
RTL Design Methodology
Parallel communication interface 8255
ECE 448: Lab 6 Using PicoBlaze Fast Sorting Class Exercise 2.
Review of Aldec Active HDL Implementing Combinational
Lecture 13 PicoBlaze I/O & Interrupt Interface
ECE 545—Digital System Design with VHDL Lecture 1
The Processor Lecture 3.1: Introduction & Logic Design Conventions
Hardware Source: ttp:// under
Lecture 15 PicoBlaze I/O & Interrupt Interface
Lecture 13 PicoBlaze I/O & Interrupt Interface
Lecture 17 PicoBlaze I/O & Interrupt Interface
RTL Design Methodology
14 Digital Systems.
RTL Design Methodology Transition from Pseudocode & Interface
RTL Design Methodology Transition from Pseudocode & Interface
RTL Design Methodology Transition from Pseudocode & Interface
Lecture 14 PicoBlaze Instruction Set
Presentation transcript:

Lecture 16 PicoBlaze I/O & Interrupt Interface ECE 448 – FPGA and ASIC Design with VHDL

ECE 448 – FPGA and ASIC Design with VHDL Required reading P. Chu, FPGA Prototyping by VHDL Examples Chapter 16, PicoBlaze I/O Interface Chapter 17, PicoBlaze Interrupt Interface ECE 448 – FPGA and ASIC Design with VHDL

Syntax and Terminology Syntax Example Definition sX KK PORT(KK) PORT((sX)) RAM(KK) s7 ab PORT(2) PORT((s1)) RAM(4) Value at register 7 Value ab (in hex) Input value from port 2 Input value from the port specified by register s1 Value from the RAM location 4

Addressing modes Immediate mode SUB s7, 07 s7 – 07  s7 ADDCY s2, 08 s2 + 08 + C  s2 Immediate mode SUB s7, 07 ADDCY s2, 08 Direct mode ADD sa, sf INPUT s5, 2a sa + sf  sa PORT(2a)  s5 Indirect mode STORE s3, (sa) INPUT s9, (s2) s3  RAM((sa)) PORT((s2))  s9

Output Decoding of Four Output Registers ECE 448 – FPGA and ASIC Design with VHDL

− − − − Output Instructions C Z OUTPUT sX, KK DIR PORT(KK) <= sX OUTPUT sX, (sY) PORT((sY)) <= sX − − DIR IND − −

Timing Diagram of an Output Instruction ECE 448 – FPGA and ASIC Design with VHDL

Truth Table of a Decoding Circuit ECE 448 – FPGA and ASIC Design with VHDL

− − − − Input Instructions C Z INPUT sX, KK DIR sX <= PORT(KK) INPUT sX, (sY) sX <= PORT((sY)) − − DIR IND − −

Block Diagram of Four Continuous-Access Ports ECE 448 – FPGA and ASIC Design with VHDL

Timing Diagram of an Input Instruction ECE 448 – FPGA and ASIC Design with VHDL

Block Diagram of Four Single-Access Ports ECE 448 – FPGA and ASIC Design with VHDL

ECE 448 – FPGA and ASIC Design with VHDL FIFO Interface clk rst clk rst FIFO din dout 8 8 full empty write read ECE 448 – FPGA and ASIC Design with VHDL

Operation of the “Standard” FIFO B C D −−−−− ECE 448 – FPGA and ASIC Design with VHDL

Operation of the First-Word Fall-Through FIFO ECE 448 – FPGA and ASIC Design with VHDL

ECE 448 – FPGA and ASIC Design with VHDL

Timing Diagram of an Input Instruction ECE 448 – FPGA and ASIC Design with VHDL

ECE 448 – FPGA and ASIC Design with VHDL Interrupt Flow ECE 448 – FPGA and ASIC Design with VHDL

Timing Diagram of an Interrupt Event ECE 448 – FPGA and ASIC Design with VHDL

ECE 448 – FPGA and ASIC Design with VHDL

Interrupt Related Instructions RETURNI ENABLE PC <= STACK[TOS] ; TOS <= TOS – 1; I <= 1; C<= PRESERVED C; Z<= PRESERVED Z RETURNI DISABLE I <= 0; C<= PRESERVED C; Z<= PRESERVED Z ENABLE INTERRUPT I <=1; DISABLE INTERRUPT I <=0;

Interrupt Interface with a Single Event ECE 448 – FPGA and ASIC Design with VHDL

Interrupt Interface with Two Requests ECE 448 – FPGA and ASIC Design with VHDL

PicoBlaze Input/Output Class Exercise

Task Draw a detailed block diagram of the digital system including: PicoBlaze-6, KCPSM6 4k x 18 instruction ROM required for the basic operation of PicoBlaze 64 x 8 external data RAM visible under addresses 0x00-0x3F 64 x 8 external data ROM visible under addresses 0x40-0x7F two input registers with the virtual addresses 0x80 and 0xCF two output registers with the virtual addresses 0x80 and 0xC0 D flip-flop with the output Q connected to the interrupt input of the PicoBlaze core, input SET connected to the external port INT, and input CLR connected to an appropriate output of the PicoBlaze core ECE 448 – FPGA and ASIC Design with VHDL

Assumptions • input register with the address 0x80 is the same as the output register with the address 0x80 • the input and output registers, data RAM, and data ROM specified above are the only i/o devices that the PicoBlaze core is communicating with • your system needs to be able to allow the PicoBlaze core to write to all aforementioned output registers and data RAM, and read from all the aforementioned input registers, data RAM, and data ROM, using instructions OUTPUT and INPUT, respectively you need to provide all details of the address decoder, and build it out of basic logic components you are familiar with all registers and flip-flops have a reset input connected to the external port RESET. ECE 448 – FPGA and ASIC Design with VHDL

Requirements Please clearly mark on your schematic: • sizes of all memories and registers • sizes and directions of all buses. ECE 448 – FPGA and ASIC Design with VHDL

Interface of PicoBlaze-6

rdl – reset during load The program memory has the option to include the JTAG Loader utility which facilitates rapid development of your KCPSM6 program. ‘rdl’ is a ‘reset during load’ signal associated with the loader, which needs to be connected to the reset input of the processor. ECE 448 – FPGA and ASIC Design with VHDL

ECE 448 – FPGA and ASIC Design with VHDL Development Flow of a System with PicoBlaze ECE 448 – FPGA and ASIC Design with VHDL

PicoBlaze Input/Output Class Exercise Solutions