Changes in timetable (changes in GREEN)
|
|
- Janice Rice
- 5 years ago
- Views:
Transcription
1 Changes in timetable (changes in GREEN) Wk12: May25 29 HLAB5 PICOBLAZE assembly Wk13: Jun1 5 Still hand in assignment on Wk13 Jun5 C.O.B. Wks14 15 (Jun8 19) Hardware tests Exam on Jun 22 Project lab I will post the requirements for the hardware tests plus a FAQ about the project and the hardware test methodology 3213: Digital Systems & Microprocessors: L#20 21
2 PICOBLAZE (Ctd) (KCPSM_Manual.pdf)
3 PICOBLAZE KCPSM PicoBlaze 8 bit Embedded Microcontroller User Guide for Spartan II,...FPGAs (XAPP213.pdf on the web) 3213: Digital Systems & Microprocessors: L#20 21
4 PICOBLAZE KCPSM ARCHITECTURE 3213: Digital Systems & Microprocessors: L#18_19
5 PICOBLAZE KCPSM ARCHITECTURE 3213: Digital Systems & Microprocessors: L#18_19
6 PICOBLAZE KCPSM3 3213: Digital Systems & Microprocessors: L#18_19
7 How to use... Assembly code KCPSM MACRO KCPSM.exe > VHDL ROM ISE design flow 3213: Digital Systems & Microprocessors: L#18_19
8
9
10
11 ROM_form.coe ROM_form.coe template used by core generator defines a Dual Port Block RAM for Virtex E/Spartan II in which the A port is read only and the B port is read/write PICOBLAZE code ROM 3213: Digital Systems & Microprocessors: L#20 21
12 <filename>.coe the last line of the template contains the key words... memory_initialization_vector= these used by Core Generator to identify that the data values follow, and the assembler will append the 256 values <filename>.coe 3213: Digital Systems & Microprocessors: L#20 21
13 <filename>.fmt In addition to.vhd and.coe files there are for info <filename>.fmt is a nicely formatted form of.psm Write your PSM program quickly and then use KCPSM to make a nice formatted version for you to adopt as KCSPM Assembler your own. 3213: Digital Systems & Microprocessors: L#20 21
14 <filename>.log Details about implementation how addresses and opcodes have been assigned : Digital Systems & Microprocessors: L#20 21
15 constant.txt / labels.txt These two files provide a list of the line labels and their associated addresses, and a list of constants and their values as defined by constant directives in the program file. These can be useful during the development of larger programs. 3213: Digital Systems & Microprocessors: L#20 21
16
17
18 Program Syntax Instructions and the first operand must be separated by at least one space. Instructions with two operands must have a comma (,) separator. 3213: Digital Systems & Microprocessors: L#20 21
19 Three directives CONSTANT NAMEREG ADDRESS 3213: Digital Systems & Microprocessors: L#20 21
20 CONSTANT directive provides a way to assign a label to an 8 bit constant value Declare port addresses and particular values change the constant value once in the directive and its effect applied to multiple places in the program
21 NAMEREG directive provides a way to assign a new name to any of the 16 registers programs can refer to variables by name rather than as absolute register specifications easier to understand the meaning in the program help to prevent inadvertent reuse of a register and data corruption
22 ADDRESS directive force the assembly of the following instructions commencing at a new address value useful for separating subroutines into specific locations vital for handling interrupts specified as a 2 digit hexadecimal value in the range 00 to FF address FF
23 ADDRESS directive (ctd) 3213: Digital Systems & Microprocessors: L#20 21
24 Interrupt Handling By default the interrupt input is disabled. Enabling Interrupts ENABLE INTERRUPT. Disabling Interrupts DISABLE INTERRUPT. ISRs automatically disable the interrupts Use RETURNI to return also includes option to ENABLE of DISABLE What happens during an interrupt? program counter is pushed onto the stack values of the CARRY and ZERO flags are preserved (restored by RETURNI). The interrupt input is automatically disabled. Finally the program counter is forced to address FF (memory location) from which the next instruction is executed. 3213: Digital Systems & Microprocessors: L#20 21
25 Basics of Interrupt Handling Since the interrupt will force control to address FF > need to ensure that a JUMP vector to a suitable ISR is located at this FF address Otherwise program control rolls over to zero! (WHY?) ISRs can be located anywhere in code. ISR performs required task then executes RETURN1 Example:
26 Interrupt Service Routine A AA Code B0 B0 B1 B2 B3 FF FF ;Interrupt example ; CONSTANT waveform_port, 02 CONSTANT counter_port, 04 CONSTANT pattern_ , AA NAMEREG sa, interrupt_counter ; start: LOAD interrupt_counter[sa], 00 LOAD s2, pattern_ [aa] ENABLE INTERRUPT ;bit0 will be data ;reset int count ;start pattern Main program delay loop where most time is spent ; E202 drive_wave: OUTPUT s2, waveform_port[02] 0007 LOAD s0, 07 ;delay size 6001 loop: SUB s0, 01 ;delay loop 9505 JUMP NZ, loop[05] 32FF XOR s2, FF ;toggle waveform 8103 JUMP drive_wave[03] Interrupt Service routine ; (here located at address B0 onwards) ADDRESS B0 4A01 int_routine : ADD interrupt_counter[sa], 01 ;increment counter EA04 OUTPUT interrupt_counter[sa], counter_port[04] 80F0 RETURNI ENABLE ; ADDRESS FF ;set interrupt vector 81B0 JUMP int_routine[b0] Interrupt vector set at address FF causes jump to ISR
27
28 (Digilent BASYS UG129.pdf) 3213: Digital Systems & Microprocessors: L#20 21
29 Why cover KCPSM3? Digilent Basys board uses a XC3S100 FPGA (SPARTAN 3E) KCPSM3 implementation in VERILOG thus we can design the top module! Also more powerful core than KCPSM assembly language virtually identical Thus we can look at working examples! but not perfect (I am still learning) 3213: Digital Systems & Microprocessors: L#20 21
30 KCPSM3 PICOBLAZE (c.f. KCPSM) 16 byte wide general purpose data registers (same) 1K instructions of programmable on chip program store, automatically loaded during FPGA configuration (c.f. 256) Byte wide Arithmetic Logic Unit (ALU) with CARRY and ZERO indicator flags (same) 64 byte internal scratchpad RAM (none) 256 input and 256 output ports for easy expansion and enhancement (sam Automatic 31 location CALL/RETURN stack (c.f. 15) Predictable performance, always two clock cycles per instruction, up to 200 MHz or 100 MIPS in a Virtex II Pro FPGA (same but faster FPGAs) Fast interrupt response; worst case 5 clock cycles (same) Optimized for Xilinx Spartan 3, Virtex II, and Virtex II Pro FPGA arch just 96 slices and 0.5 to 1 block RAM Assembler, instruction set simulator support (yes) 3213: Digital Systems & Microprocessors: L#20 21
31 3213: Digital Systems & Microprocessors: L#20 21
32 Interfacing External interface to top module here 3213: Digital Systems & Microprocessors: L#20 21
33 Example: Interrupts: 3213: Digital Systems & Microprocessors: L#20 21
34 Example: Interrupts: interrupts.psm CONSTANT waveform_port, 02 CONSTANT counter_port, 04 CONSTANT pattern_ , AA NAMEREG sa, interrupt_counter start: LOAD interrupt_counter, 00 LOAD s2, pattern_ ENABLE INTERRUPT ; drive_wave: OUTPUT s2, waveform_port LOAD s0, 07 loop: SUB s0, 01 JUMP NZ, loop XOR s2, FF JUMP drive_wave ; ADDRESS 3B0 int_routine: ADD interrupt_counter, 01 OUTPUT interrupt_counter, counter_port RETURNI ENABLE ; ADDRESS 3FF JUMP int_routine 3213: Digital Systems & Microprocessors: L#20 21
35
36 Example: Interrupts Run./assemble.bat 3213: Digital Systems & Microprocessors: L#20 21
37 Example: Instantiations module inttop ( input wire clk, input wire rst, input wire interrupt, output reg [7:0] leds ); inter inter_inst (.address(address),.instruction(instruction),.reset(reset),.rst(rst),.clk(clk)); kcpsm3 kcpsm3_inst (.address(address),.instruction(instruction),.port_id(port_id),.write_strobe(write_strobe),.out_port(out_port),.read_strobe(read_strobe),.in_port(in_port),.interrupt(interrupt),.interrupt_ack(interrupt_ack),.reset(reset),.clk(clk)); 3213: Digital Systems & Microprocessors: L#20 21
38 Example: top module module inttop (input wire clk, input wire rst, input wire interrupt, output reg [7:0] leds ); wire [9:0] address; wire [17:0] instruction; wire [7:0] port_id; wire [7:0] out_port; reg [7:0] in_port; wire write_strobe; wire read_strobe; wire interrupt_ack; kcpsm3 kcpsm3_inst (.address(address),.instruction(instruction),.port_id(port_id),.write_strobe(write_strobe),.out_port(out_port),.read_strobe(read_strobe),.in_port(in_port),.interrupt(interrupt),.interrupt_ack(interrupt_ack),.reset(reset),.clk(clk)); inter inter_inst (.address(address),.instruction(instruction),.reset(reset),.rst(rst),.clk(clk)); Invariant clk) begin if (write_strobe) begin if (port_id == 8'h02) begin leds[7:4] <= out_port[ leds[3:0] <= 4'b1111; end else if (port_id == 8'h04) begin leds[3:0] <= out_port[ leds[7:4] <= 4'b0000; end else leds <= 8'h00; end end Output drive endmodule Multiplex waveform and interrupt counter output IMPROVE!
39
40
41
42 Example: Does it work?? 3213: Digital Systems & Microprocessors: L#20 21
Agenda. PicoBlaze Hello World project using the PicoBlaze. Class 9 Copyright 2011 Greg Tumbush Ver 1.0 1
Agenda PicoBlaze Hello World project using the PicoBlaze Class 9 Copyright 2011 Greg Tumbush Ver 1.0 1 Embedded Processor Why? Firmware is easier to maintain/modify/deploy If the constraints of you system
More informationPicoBlaze 8-bit Embedded Microcontroller
PicoBlaze 8-bit Embedded Microcontroller 1 PicoBlaze Overview PicoBlaze is a simple 8-bit microcontroller Compact in size Occupies 96 slices in a Spartan-3 (5% of an XC3S200) Performance is respectable
More informationPicoBlaze Instruction Set and Event Reference
Appendix C PicoBlaze Instruction Set and Event Reference This appendix provides a detailed operational description of each PicoBlaze instruction and the Interrupt and Reset events, including pseudocode
More informationImplementing a PicoBlaze microprocessor structure (state machine) using a reconfigurable hardware medium
Laboratory number 3 Implementing a PicoBlaze microprocessor structure (state machine) using a reconfigurable hardware medium Purpose of the laboratory: A PicoBlaze TM processor version for Virtex, Virtex-E,
More informationPicoBlaze 8-Bit Microcontroller for CPLD Devices
Application Note: CPLD XAPP37(v.) January 9, 23 R PicoBlaze -Bit Microcontroller for CPLD Devices Summary Introduction This application note describes the implementation of an -bit microcontroller design
More informationLab 4: Integrating a picoblaze processor in LabVIEW FPGA by use of CLIP node
Lab 4: Integrating a picoblaze processor in LabVIEW FPGA by use of CLIP node Keywords: LabVIEW, LabVIEW FPGA, Xilinx SPARTAN3E Starter Kit, VHDL, picoblaze, assembler, CLIP node. Introduction Welcome to
More informationPicoBlaze 8-Bit Microcontroller for Virtex-E and Spartan-II/IIE Devices Author: Ken Chapman
Application Note: Virtex-E and Spartan-II/IIE Devices XAPP23 (v2.) February 4, 23 PicoBlaze 8-Bit Microcontroller for Virtex-E and Spartan-II/IIE Devices Author: Ken Chapman Summary The Constant (k) Coded
More informationHow-To User Guide: Working with PicoBlaze on an FPGA. By: Sean Farner Peter Frandina
How-To User Guide: Working with PicoBlaze on an FPGA By: Sean Farner Peter Frandina Date: 5/20/2008 Table of Contents 1.0 Background Information...3 2.0 File Setup...3 3.0 Editing Source Files...3 4.0
More informationCDA 4253 FPGA System Design The PicoBlaze Microcontroller. Hao Zheng Comp Sci & Eng U of South Florida
CDA 4253 FPGA System Design The PicoBlaze Microcontroller Hao Zheng Comp Sci & Eng U of South Florida Overview of PicoBlaze So:-core microcontroller in VHDL: portable to other plaaorms. Small: occupies
More informationEE 459/500 HDL Based Digital Design with Programmable Logic
EE 459/500 HDL Based Digital Design with Programmable Logic Lecture 17 From special-purpose FSMD to general-purpose microcontroller: Xilinx s PicoBlaze 1 Overview From FSMD to Microcontroller PicoBlaze
More informationPicoBlaze 8-bit Embedded Microcontroller User Guide
PicoBlaze 8-bit Embedded Microcontroller User Guide for Spartan-3, Virtex-II, and Virtex-II Pro FPGAs R Xilinx is disclosing this Document and Intellectual Property (hereinafter the Design ) to you for
More informationPicoBlaze Instruction Set
Chapter 3 PicoBlaze Instruction Set Table 3-1 summarizes the entire PicoBlaze instruction set, which appears alphabetically. Instructions are listed using the KCPSM3 syntax. If different, the pblazide
More informationChapter 5 Embedded Soft Core Processors
Embedded Soft Core Processors Coarse Grained Architecture. The programmable gate array (PGA) has provided the opportunity for the design and implementation of a soft core processor in embedded design.
More informationPICOBLAZE INTERRUPT INTERFACE
CHAPTER 17 PICOBLAZE INTERRUPT INTERFACE 17.1 INTRODUCTION During normal program execution, a microcontroller polls the I/O peripherals (i.e., checks the status signals) and determines the course of action
More informationELEC 4200 Lab#10 Interrupting SPI Receiver for use with a Processor Core
ELEC 4200 Lab#10 Interrupting SPI Receiver for use with a Processor Core SPI description: http://en.wikipedia.org/wiki/serial_peripheral_interface_bus References you may need: PicoBlaze KCPSM6 User Manual
More informationKCPSM. Ken Chapman. Constant(k) Coded Programmable State Machine. Xilinx Ltd
KCPSM Constant(k) Coded Programmable State Machine Ken Chapman Xilinx Ltd Version 1.10 - July 2000 Limited Warranty and Disclaimer. These designs are provided to you as is. Xilinx and its licensors make
More informationLearning Outcomes. Spiral 3 1. Digital Design Targets ASICS & FPGAS REVIEW. Hardware/Software Interfacing
3-. 3-.2 Learning Outcomes Spiral 3 Hardware/Software Interfacing I understand the PicoBlaze bus interface signals: PORT_ID, IN_PORT, OUT_PORT, WRITE_STROBE I understand how a memory map provides the agreement
More informationReading Spartan-3A Device DNA
Reading Spartan-3A Device DNA A Reference Design for the Spartan-3A Starter Kit Includes an LCD display driver Rev2 10 th July 2007 Ken Chapman Xilinx Ltd Limitations Limited Warranty and Disclaimer. These
More informationLecture 16 PicoBlaze Instruction Set & Assembler Directives
Lecture 16 PicoBlaze Instruction Set & Assembler Directives ECE 448 FPGA and ASIC Design with VHDL Required reading P. Chu, FPGA Prototyping by VHDL Examples Chapter 15 PicoBlaze Assembly Code Development
More informationSpiral 3-1. Hardware/Software Interfacing
3-1.1 Spiral 3-1 Hardware/Software Interfacing 3-1.2 Learning Outcomes I understand the PicoBlaze bus interface signals: PORT_ID, IN_PORT, OUT_PORT, WRITE_STROBE I understand how a memory map provides
More informationInterrupt Lab using PicoBlaze
Interrupt Lab using PicoBlaze - Vikram & Chethan Advisor: Prof. Gandhi Puvvada Introduction An interrupt is a signal to the processor from hardware (or software) indicating an event that needs immediate
More informationEVALUATION OF PICOBLAZE AND IMPLEMENTATION OF A NETWORK INTERFACE ON A FPGA
EVALUATION OF PICOBLAZE AND IMPLEMENTATION OF A NETWORK INTERFACE ON A FPGA Thesis project at Elektronics system Linköping Institute of Technology by Robert Mattsson Reg nr: LiTH-ISY-EX-ET-0288-2004 Linköping
More informationLearning Outcomes. Input / Output. Introduction PICOBLAZE 10/18/2017
3-. Learning Outcomes 3-.2 Hardware/Software Interfacing PICOBLAZE Slides from Mark Redekopp, EE29 slide set (EE29Spiral3.pdf) adopted to suit EE354L I understand the PicoBlaze bus interface signals: PORT_ID[7:],
More informationProgrammable Control Logic
Programmable Control Logic Microsequencers Example: building the micro8 Hardware/Software tradeoff Lab #5 due Thursday, project abstract next Monday 1 Digital Systems = FSMs + Datapath FSM control Datapath:
More informationLaboratory Memory Components
Laboratory 3 3. Memory Components 3.1 Objectives Design, implement and test Register File Read only Memories ROMs Random Access Memories RAMs Familiarize the students with Xilinx ISE WebPack Xilinx Synthesis
More informationPicoBlaze for Spartan-6, Virtex-6, 7-Series, Zynq and UltraScale Devices (KCPSM6)
PicoBlaze for Spartan-6, Virtex-6, 7-Series, Zynq and UltraScale Devices (KCPSM6) Including Ultra-Compact UART Macros and Reference Designs Ken Chapman 30 th September 2014 Release: 9 Disclaimer Notice
More informationLab 3: Xilinx PicoBlaze Flow Lab Targeting Spartan-3E Starter Kit
Lab 3: Xilinx PicoBlaze Flow Lab Targeting Spartan-3E Starter Kit Xilinx PicoBlaze Flow Demo Lab www.xilinx.com 1-1 Create a New Project Step 1 Create a new project targeting the Spartan-3E device that
More informationPicoBlaze 8-Bit Microcontroller for Virtex Devices Author: Ken Chapman
Application Note: Virtex Series and Spartan-II family XAPP213 (v1.2) April 30, 2002 PicoBlaze 8-Bit Microcontroller for Virtex Devices Author: Ken Chapman Summary The Constant (k) Coded Programmable State
More informationEXPERIMENT NO. 1 THE MKT 8085 MICROPROCESSOR TRAINER
OBJECT: EXPERIMENT NO. 1 THE MKT 8085 MICROPROCESSOR TRAINER To understand the structure and operating instruction of the microprocessor trainer. INTRODUCTION: The MKT 8085 is a single-board microcomputer,
More informationInterrupt Lab using PicoBlaze
Interrupt Lab using PicoBlaze - Vikram & Chethan Advisor: Prof. Gandhi Puvvada Introduction An interrupt is a signal to the processor from hardware (or software) indicating an event that needs immediate
More information17.1. Unit 17. Instruction Sets Picoblaze Processor
17.1 Unit 17 Instruction Sets Picoblaze Processor INSTRUCTION SET OVERVIEW 17.2 17.3 Instruction Set Review Defines the software interface of the processor and memory system Instruction set is the vocabulary
More informationDesign and Implementation of a FPGA-based Pipelined Microcontroller
Design and Implementation of a FPGA-based Pipelined Microcontroller Rainer Bermbach, Martin Kupfer University of Applied Sciences Braunschweig / Wolfenbüttel Germany Embedded World 2009, Nürnberg, 03.03.09
More informationV8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs
V8-uRISC 8-bit RISC Microprocessor February 8, 1998 Product Specification VAutomation, Inc. 20 Trafalgar Square Nashua, NH 03063 Phone: +1 603-882-2282 Fax: +1 603-882-1587 E-mail: sales@vautomation.com
More informationUnit 17. Instruction Set Review INSTRUCTION SET OVERVIEW. Historical Instruction Format Options. Instruction Sets Picoblaze Processor
17.1 17.2 Unit 17 Instruction Sets Picoblaze Processor INSTRUCTION SET OVERVIEW 17.3 17.4 Instruction Set Review Defines the software interface of the processor and memory system Instruction set is the
More informationUniversity of Hawaii EE 361L. Getting Started with Spartan 3E Digilent Basys2 Board. Lab 4.1
University of Hawaii EE 361L Getting Started with Spartan 3E Digilent Basys2 Board Lab 4.1 I. Test Basys2 Board Attach the Basys2 board to the PC or laptop with the USB connector. Make sure the blue jumper
More informationNikhil Gupta. FPGA Challenge Takneek 2012
Nikhil Gupta FPGA Challenge Takneek 2012 RECAP FPGA Field Programmable Gate Array Matrix of logic gates Can be configured in any way by the user Codes for FPGA are executed in parallel Configured using
More informationDual Port SRAM Based Microcontroller Chip Test Report
Dual Port SRAM Based Microcontroller Chip Test Report By Sergey Kononov, et al. Chip Description Fig. 1: Chip Layout, Pin Configuration The Chip consists of 3 main components: Dual Port SRAM (DPRAM), test
More informationSunday, April 25, 2010
Sunday, April 25, 2010 BSNL TTA EXAM MICRO PROCESSER BSNL TTA EXAM MICRO PROCESSER 1. A 32-bit processor has (a) 32 registers (b) 32 I/O devices (c) 32 Mb of RAM (d) a 32-bit bus or 32-bit registers 2.
More informationTopics. Midterm Finish Chapter 7
Lecture 9 Topics Midterm Finish Chapter 7 Xilinx FPGAs Chapter 7 Spartan 3E Architecture Source: Spartan-3E FPGA Family Datasheet CLB Configurable Logic Blocks Each CLB contains four slices Each slice
More informationThe assignments will help you learn Verilog as a Hardware Description Language and how hardware circuits can be developed using Verilog and FPGA.
General Instructions The assignments will help you learn Verilog as a Hardware Description Language and how hardware circuits can be developed using Verilog and FPGA. You have to come to the lab during
More informationChapter 1 Microprocessor architecture ECE 3120 Dr. Mohamed Mahmoud http://iweb.tntech.edu/mmahmoud/ mmahmoud@tntech.edu Outline 1.1 Computer hardware organization 1.1.1 Number System 1.1.2 Computer hardware
More informationGraduate Institute of Electronics Engineering, NTU. FPGA Lab. Speaker : 鍾明翰 (CMH) Advisor: Prof. An-Yeu Wu Date: 2010/12/14 ACCESS IC LAB
FPGA Lab Speaker : 鍾明翰 (CMH) Advisor: Prof. An-Yeu Wu Date: 2010/12/14 ACCESS IC LAB Objective In this Lab, you will learn the basic set-up and design methods of implementing your design by ISE 10.1. Create
More informationTopics. Midterm Finish Chapter 7
Lecture 9 Topics Midterm Finish Chapter 7 ROM (review) Memory device in which permanent binary information is stored. Example: 32 x 8 ROM Five input lines (2 5 = 32) 32 outputs, each representing a memory
More informationSHA-1 Algorithm for use with DS2432
SHA-1 Algorithm for use with DS2432 Rev.1 Ken Chapman Xilinx Ltd April 2006 Limitations Limited Warranty and Disclaimer. These designs are provided to you as is. Xilinx and its licensors make and you receive
More informationQ. P. Code : b. Draw and explain the block dig of a computer with microprocessor as CPU.
Q. P. Code : 08235 (2½ Hours) [Total Marks: 75] N. B.: (1) All questions are compulsory. (2) Make suitable assumptions wherever necessary and state the assumptions made. (3) Answers to the same question
More informationDocumentation Design File Formats
PIC165X Fast RISC Microcontroller (DFPIC165X) July 16, 2008 Product Specification Digital Core Design Wroclawska 94 41-902 Bytom Poland Phone : +48 32 2828266 Fax : +48 32 2827437 E-mail : info@dcd.pl
More informationMICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS
MICROPROCESSOR AND MICROCONTROLLER BASED SYSTEMS UNIT I INTRODUCTION TO 8085 8085 Microprocessor - Architecture and its operation, Concept of instruction execution and timing diagrams, fundamentals of
More informationMicrocomputer Architecture and Programming
IUST-EE (Chapter 1) Microcomputer Architecture and Programming 1 Outline Basic Blocks of Microcomputer Typical Microcomputer Architecture The Single-Chip Microprocessor Microprocessor vs. Microcontroller
More informationA First Look at Microprocessors
A First Look at Microprocessors using the The General Prototype Computer (GPC) model Part 4 Ports CPU Ecosystem All CPUs need RAM, ROM, a clock source and reset circuit, and power. Power Supply 1 Vio Vcore
More informationBlock RAM. Size. Ports. Virtex-4 and older: 18Kb Virtex-5 and newer: 36Kb, can function as two 18Kb blocks
Block RAM Dedicated FPGA resource, separate columns from CLBs Designed to implement large (Kb) memories Multi-port capabilities Multi-clock capabilities FIFO capabilities Built-in error detection and correction
More informationArchitecture Project Phase (1)
Objective Cairo University CMP 301B Faculty of Engineering Spring 2013 Computer Engineering Department Architecture Project Phase (1) In this phase, it is required to design and implement a simple pipelined
More informationC O M P A N Y O V E R V I E W
C O M P A N Y O V E R V I E W Digital Core Design is a leading IP Core provider and a System-on-Chip design house. The company was founded in 1999 and since the very beginning has been focused on IP Core
More informationVerilog Module 1 Introduction and Combinational Logic
Verilog Module 1 Introduction and Combinational Logic Jim Duckworth ECE Department, WPI 1 Module 1 Verilog background 1983: Gateway Design Automation released Verilog HDL Verilog and simulator 1985: Verilog
More informationCHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY
CHAPTER 5 : Introduction to Intel 8085 Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY The 8085A(commonly known as the 8085) : Was first introduced in March 1976 is an 8-bit microprocessor with 16-bit address
More informationEE 2700 Project 2 Microprocessor Design
EE 2700 Project 2 Microprocessor Design This project may be done individually or in teams of two. You may consult others for general questions but not for specific issues. Cheating will not be tolerated
More informationLab 2: Barrel Shifter Design
EGR 400 A Advanced Digital System Design Using FPGAs Lab 2: Barrel Shifter Design Prepared for: Dr. Foist Christopher Parisi College of Engineering California Baptist University 10/05/12 Introduction The
More informationThe Microcontroller. Lecture Set 3. Major Microcontroller Families. Example Microcontroller Families Cont. Example Microcontroller Families
The Microcontroller Lecture Set 3 Architecture of the 8051 Microcontroller Microcontrollers can be considered as self-contained systems with a processor, memory and I/O ports. In most cases, all that is
More informationTHE 8051 MICROCONTROLLER
SECOND EDITION THE 8051 MICROCONTROLLER I. Scott MacKenzie University of Guelph Guelph, Ontario 'v ' ' Prentice Hall, Upper Saddle River, New Jersey 07458 INTRODUCTION TO MICROCONTROLLERS 1 1.1 Introduction
More informationDigital IP Cell 8-bit Microcontroller PE80
1. Description The is a Z80 compliant processor soft-macro - IP block that can be implemented in digital or mixed signal ASIC designs. The Z80 and its derivatives and clones make up one of the most commonly
More informationIn this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and
In this lecture, we will focus on two very important digital building blocks: counters which can either count events or keep time information, and shift registers, which is most useful in conversion between
More informationTSEA44 - Design for FPGAs
2015-11-24 Now for something else... Adapting designs to FPGAs Why? Clock frequency Area Power Target FPGA architecture: Xilinx FPGAs with 4 input LUTs (such as Virtex-II) Determining the maximum frequency
More informationFPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1
FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital
More information8/26/2010. Introduction to 8085 BLOCK DIAGRAM OF INTEL Introduction to Introduction to Three Units of 8085
BLOCK DIAGRAM OF INTEL 8085 GURSHARAN SINGH TATLA Introduction to 8085 It was introduced in 1977. It is 8-bit microprocessor. Its actual name is 8085 A. It is single NMOS device. It contains 6200 transistors
More informationLaboratory 05. Single-Cycle MIPS CPU Design smaller: 16-bits version One clock cycle per instruction
Laboratory 05 Single-Cycle MIPS CPU Design smaller: 16-bits version One clock cycle per instruction 1. Objectives Study, design, implement and test Instruction Fetch Unit for the 16-bit Single-Cycle MIPS
More informationTEACHING COMPUTER ARCHITECTURE THROUGH DESIGN PRACTICE. Guoping Wang 1. INTRODUCTION
TEACHING COMPUTER ARCHITECTURE THROUGH DESIGN PRACTICE Guoping Wang Indiana University Purdue University Fort Wayne, Indiana; Email:wang@engr.ipfw.edu 1. INTRODUCTION Computer Architecture is a common
More informationCHAPTER ASSEMBLY LANGUAGE PROGRAMMING
CHAPTER 2 8051 ASSEMBLY LANGUAGE PROGRAMMING Registers Register are used to store information temporarily: A byte of data to be processed An address pointing to the data to be fetched The vast majority
More informationMIGRATING MICROCONTROLLER BASED CONTROL SYSTEMS INTO THE NANO FABRICS OF FPGAS
MIGRATING MICROCONTROLLER BASED CONTROL SYSTEMS INTO THE NANO FABRICS OF FPGAS Santosh A. Shinde, Vinod G. Shelake and R. K. Kamat* VLSI Laboratory, Department of Electronics, Shivaji University, KOLHAPUR
More informationVerilog Coding Guideline
Verilog Coding Guideline Digital Circuit Lab TA: Po-Chen Wu Outline Introduction to Verilog HDL Verilog Syntax Combinational and Sequential Logics Module Hierarchy Write Your Design Finite State Machine
More information12-Dec-11. Gursharan Singh Maninder Kaur. Introduction to 8085 BLOCK DIAGRAM OF INTEL Introduction to Introduction to 8085
mailme@gursharansingh.in BLOCK DIAGRAM OF INTEL 8085 mailme@maninderkaur.in Introduction to 8085 It was introduced in 1977. It is 8-bit microprocessor. Its actual name is 8085 A. It is single NMOS device.
More informationBrief Introduction to Verilog HDL (Part 1)
BUDAPEST UNIVERSITY OF TECHNOLOGY AND ECONOMICS FACULTY OF ELECTRICAL ENGINEERING AND INFORMATICS DEPARTMENT OF MEASUREMENT AND INFORMATION SYSTEMS Brief Introduction to Verilog HDL (Part 1) Tamás Raikovich
More informationDEPARTMENT OF ECE QUESTION BANK SUBJECT: MICROPROCESSOR AND MICROCONTROLLER UNIT-1 PART-A (2 MARKS)
DEPARTMENT OF ECE QUESTION BANK SUBJECT: MICROPROCESSOR AND MICROCONTROLLER CODE: EC6504 UNIT-1 1. How many memory locations are available in 8086 microprocessor? 2. What are the flags available in 8086
More informationCSE140L: Components and Design Techniques for Digital Systems Lab
CSE140L: Components and Design Techniques for Digital Systems Lab Tajana Simunic Rosing Source: Vahid, Katz, Culler 1 Announcements & Outline Lab 4 due; demo signup times listed on the cse140l site Check
More informationAssembly Language Programming
Experiment 3 Assembly Language Programming Every computer, no matter how simple or complex, has a microprocessor that manages the computer s arithmetical, logical and control activities. A computer program
More informationHistory and Basic Processor Architecture
History and Basic Processor Architecture History of Computers Module 1 Section 1 What Is a Computer? An electronic machine, operating under the control of instructions stored in its own memory, that can
More informationENGR 2031 Digital Design Laboratory Lab 7 Background
ENGR 2031 Digital Design Laboratory Lab 7 Background What we will cover Overview of the Simple Computer (scomp) Architecture Register Flow Diagrams VHDL Implementation of scomp Lab 7 scomp Architecture
More informationControl Unit: The control unit provides the necessary timing and control Microprocessor resembles a CPU exactly.
Unit I 8085 and 8086 PROCESSOR Introduction to microprocessor A microprocessor is a clock-driven semiconductor device consisting of electronic logic circuits manufactured by using either a large-scale
More informationBy the end of Class. Outline. Homework 5. C8051F020 Block Diagram (pg 18) Pseudo-code for Lab 1-2 due as part of prelab
By the end of Class Pseudo-code for Lab 1-2 due as part of prelab Homework #5 on website due before next class Outline Introduce Lab 1-2 Counting Timers on C8051 Interrupts Laboratory Worksheet #05 Copy
More information8051 Overview and Instruction Set
8051 Overview and Instruction Set Curtis A. Nelson Engr 355 1 Microprocessors vs. Microcontrollers Microprocessors are single-chip CPUs used in microcomputers Microcontrollers and microprocessors are different
More informationCSE140L: Components and Design
CSE140L: Components and Design Techniques for Digital Systems Lab Tajana Simunic Rosing Source: Vahid, Katz, Culler 1 Grade distribution: 70% Labs 35% Lab 4 30% Lab 3 20% Lab 2 15% Lab 1 30% Final exam
More informationFPGA Interfacing of HD44780 Based LCD Using Delayed Finite State Machine (FSM)
FPGA Interfacing of HD44780 Based LCD Using Delayed Finite State Machine (FSM) Edwin NC Mui Custom R & D Engineer Texco Enterprise Ptd. Ltd. {blackgrail2000@hotmail.com} Abstract This paper presents a
More information1. Internal Architecture of 8085 Microprocessor
1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within up to carry out the instruction, which has been decoded. In reality causes certain connections between blocks of the
More informationRECONFIGURABLE SPI DRIVER FOR MIPS SOFT-CORE PROCESSOR USING FPGA
RECONFIGURABLE SPI DRIVER FOR MIPS SOFT-CORE PROCESSOR USING FPGA 1 HESHAM ALOBAISI, 2 SAIM MOHAMMED, 3 MOHAMMAD AWEDH 1,2,3 Department of Electrical and Computer Engineering, King Abdulaziz University
More informationXilinx ASMBL Architecture
FPGA Structure Xilinx ASMBL Architecture Design Flow Synthesis: HDL to FPGA primitives Translate: FPGA Primitives to FPGA Slice components Map: Packing of Slice components into Slices, placement of Slices
More informatione-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Interrupt Handling Module No: CS/ES/13 Quadrant 1 e-text
e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: Interrupt Handling Module No: CS/ES/13 Quadrant 1 e-text 1. Interrupt An interrupt is the occurrence of a condition--an event --
More informationUltra-Compact UART Macros for Spartan-6, Virtex-6 and 7-Series
(Universal Asynchronous Receiver Transmitter) Ultra-Compact UART Macros for Spartan-6, Virtex-6 and 7-Series Ken Chapman with PicoBlaze (KCPSM6) Reference Designs 30 th September 2014 Release: 5 Disclaimer
More informationQuestion Bank Part-A UNIT I- THE 8086 MICROPROCESSOR 1. What is microprocessor? A microprocessor is a multipurpose, programmable, clock-driven, register-based electronic device that reads binary information
More informationContents 8051 Instruction Set BY D. BALAKRISHNA, Research Assistant, IIIT-H Chapter I : Control Transfer Instructions Lesson (a): Loop Lesson (b): Jump (i) Conditional Lesson (c): Lesson (d): Lesson (e):
More informationField Programmable Gate Array
Field Programmable Gate Array System Arch 27 (Fire Tom Wada) What is FPGA? System Arch 27 (Fire Tom Wada) 2 FPGA Programmable (= reconfigurable) Digital System Component Basic components Combinational
More informationEEL 4783: HDL in Digital System Design
EEL 4783: HDL in Digital System Design Lecture 15: Logic Synthesis with Verilog Prof. Mingjie Lin 1 Verilog Synthesis Synthesis vs. Compilation Descriptions mapped to hardware Verilog design patterns for
More informationPROGRAM CONTROL UNIT (PCU)
nc. SECTION 5 PROGRAM CONTROL UNIT (PCU) MOTOROLA PROGRAM CONTROL UNIT (PCU) 5-1 nc. SECTION CONTENTS 5.1 INTRODUCTION........................................ 5-3 5.2 PROGRAM COUNTER (PC)...............................
More informationLaboratory Finite State Machines and Serial Communication
Laboratory 11 11. Finite State Machines and Serial Communication 11.1. Objectives Study, design, implement and test Finite State Machines Serial Communication Familiarize the students with Xilinx ISE WebPack
More informationAssembly Language programming (3)
EEE3410 Microcontroller Applications LABORATORY Experiment 3 Assembly Language programming (3) Name Class Date Class No. Marks Conditional Program Branching and Subroutine Call in 8051 Objectives To learn
More informationCPU Structure and Function. Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition
CPU Structure and Function Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition CPU must: CPU Function Fetch instructions Interpret/decode instructions Fetch data Process data
More information2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.
DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING EE6502- MICROPROCESSORS AND MICROCONTROLLERS UNIT I: 8085 PROCESSOR PART A 1. What is the need for ALE signal in
More informationVerilog Fundamentals. Shubham Singh. Junior Undergrad. Electrical Engineering
Verilog Fundamentals Shubham Singh Junior Undergrad. Electrical Engineering VERILOG FUNDAMENTALS HDLs HISTORY HOW FPGA & VERILOG ARE RELATED CODING IN VERILOG HDLs HISTORY HDL HARDWARE DESCRIPTION LANGUAGE
More informationCS/EE 3710 Computer Architecture Lab Checkpoint #2 Datapath Infrastructure
CS/EE 3710 Computer Architecture Lab Checkpoint #2 Datapath Infrastructure Overview In order to complete the datapath for your insert-name-here machine, the register file and ALU that you designed in checkpoint
More informationTHE 8051 MICROCONTROLLER
THIRD EDITION THE 8051 MICROCONTROLLER I. Scott MacKenzie University of Guelph Prentice Hall Upper Saddle River, New Jersey Columbus, Ohio 1 INTRODUCTION TO MICROCONTROLLERS 1 1.1 Introduction 1 1.2 Terminology
More informationUnderstanding the basic building blocks of a microcontroller device in general. Knows the terminologies like embedded and external memory devices,
Understanding the basic building blocks of a microcontroller device in general. Knows the terminologies like embedded and external memory devices, CISC and RISC processors etc. Knows the architecture and
More informationSpiral 1 / Unit 4 Verilog HDL. Digital Circuit Design Steps. Digital Circuit Design OVERVIEW. Mark Redekopp. Description. Verification.
1-4.1 1-4.2 Spiral 1 / Unit 4 Verilog HDL Mark Redekopp OVERVIEW 1-4.3 1-4.4 Digital Circuit Design Steps Digital Circuit Design Description Design and computer-entry of circuit Verification Input Stimulus
More informationCSCB58 - Lab 3. Prelab /3 Part I (in-lab) /2 Part II (in-lab) /2 TOTAL /8
CSCB58 - Lab 3 Latches, Flip-flops, and Registers Learning Objectives The purpose of this exercise is to investigate the fundamental synchronous logic elements: latches, flip-flops, and registers. Prelab
More information