A True Single Cycle RISC Processor without Pipelining

Size: px
Start display at page:

Download "A True Single Cycle RISC Processor without Pipelining"

Transcription

1 1 A True Single Cycle RISC Processor without Pipelining Robert S. Plachno, VP of Audio Abstract This paper details the design of a embedded RISC controller used for mixed signal audio integrated circuits. This processor replaced an existing 8 bit CISC embedded processor and obtained a performance improvement of about 6x. This performance improvement was entirely due to architectural improvements using the same input clock rate and external ROM IP block. Index Terms Computer architecture, Memory management, Pipeline processing, Reduced instruction set computing. T I.INTRODUCTION HE architecture of a RISC processor should support single cycle operation. The definition of a signal cycle operation is continuous instruction fetches from the instruction memory (ROM in this case) at the maximum access rate of the memory. Most RISC processor designs obtain this performance by pipelining. With a pipelined architecture each instruction is fetched assuming the next instruction is at the next physical instruction address (PC+1). If a jump instruction occurs then the pipeline is flushed or a delay must occur while the correct instruction address is calculated. This paper describes a RISC architecture in which single cycle operation is obtained without using a pipelined design. This RISC processor was designed as an embedded controller. Other architectural advantages of this design will be discussed as well as the implementation and design techniques A.CISC versus RISC II.THE LIMITATIONS OF THE PREVIOUS DESIGN The previous designs used an 8-bit CISC as an embedded controller. This CISC was inefficient and had difficulty to support continuous customer requests for additional features. The register instructions required 5 internal clock cycles and instructions using external memory usually required 6 internal cycles. The internal register to register instructions had a low utilization in the program. Instructions using external memory were more common. The instruction fetch occurred over an 8 bit bus using multiple cycles which depended on the instruction type. The CISC design used a ROM organized as 24K by 8 for the instruction memory. Most instruction fetches required 2 to 3 ROM accesses. This technical paper describes an embedded RISC controller used in mixed signal audio products from 1993 through Adapting a RISC architecture was forced by the new customer feature requirements. This integrated circuit did not use a PLL so the input clock rate could not be simply sped up. Any performance improvement had to come from purely an architectural change by obtaining single cycle operation. B.Operating Voltage Range This integrated circuit was for PC audio products that could be designed into desk top PCs or notebooks. In this time frame desk tops used 5V operation while notebooks required 3.3V operation. The analog circuits were designed to run over this wide power supply range and at multiple fabrication houses. It was surprising to find that the circuit with the least operating voltage margin was the CISC processor. The CISC was a fully custom design that had issues with the low voltage operation. The new RISC design lowered the operating voltage dramatically to the point where the processor was not the limiting factor and the chip gained over a half a volt of margin. C.Royalty Cost The CISC was a purchased design which required royalty payments. Since the PC audio products had volume shipments at over 2M per month it was desirable to eliminate this cost burden III.MEMORY FOR PROCESSOR DESIGNS My original experience was in memory design including pseudo-static designs where the memory pre-charge is hidden from the user. Later I worked on several processor designs including a 64 bit processor that had a large design group. It became apparent that most processor engineers did not understand how memories worked and I had to teach them how to efficiently interface to their memory blocks. Memories require a pre-charge. In this time frame it was a standard practice to divide the memory cycle in two. The first half cycle is for pre-charge and the second half-cycle is the actual memory access. Addresses must only change during the pre-charge time and the address set-up time is actually measured to the center clock transition (at the end of the first half-cycle). The existing ROM used for the CISC was designed exactly in this manner. As time progressed logic engineers became even more ignorant of their memory blocks and the circuit designers of the memories made their specified interfaces safer. With the change in philosophy to synchronous designs then using latches fell out of favor to using flip-flops. Most engineers now put flip-flops to fix the addresses at the input of the

2 2 memory. This wastes almost a full half cycle. A correct design would use a latch that is open during the pre-charge period. It is also extremely wasteful to inset flip-flops on the output data of the memory. A correct design would have a latch open during the second half cycle of the memory and memory designs should already include this latch internally. Mentally this problem is a conceptual difference caused by going to a synchronous design philosophy. The pipeline design engineer has flip-flops in too many places. How can you do an instruction decode and the next instruction address calculation (for jump instructions) all on the one clock edge between two instruction fetches? In reality you have about half a clock cycle to perform these calculations. You have the margin for the ROM access time for the last instruction fetch plus the precharge time minus the address set-up time for the next instruction fetch. IV.BASIC OVERVIEW OF THE RISC DESIGN The bit widths of each unit are as follows: Instruction Unit: 24 bits Execution Unit: 8 bits Memory Unit: 16 bits The instruction ROM used for the CISC was an 8Kx8 block repeated 3 times and organized as 24K by 8. The RISC used the same original ROM 8Kx8 block but has it organized as 8Kx24 since the instruction is 24 bits wide. All instruction fetches are a single cycle 24 bit access. Both the instruction ROM and any external RAM has 16 bit addressing as indicated by the 16 bit memory unit width. This allows the RISC to have an 8 bit opcode and 16 bit address for jump instructions, etc all in one instruction fetch. This means there is no relative addressing jump calculations. The address for the jump instructions is always immediate. It does not have to be calculated but only multiplexed with PC+1. ROM and RAM access have separate opcodes so in effect there is 17 bit addressing for external memories. The register file feeding the execution unit has 8 bit addressing but the MSB for the register file is always 0. Since the RISC is an embedded controller the other 128 register addresses (MSB=1) are reserved for external user defined registers. Within the 24bit instruction width you have 8 bits for the opcode and two 8 bit addresses for the two operands for the execution unit instructions. Immediate commands have an 8 bit opcode, an 8 bit address for the operand destination and the 8 bit immediate value. There is an obvious trade off to have only an 8 bit execution unit. For 16 bit audio calculations two instructions are performed. For example, 16 bit values are added by two instructions: ADD followed by an ADC (add with carry). The CISC performed in the same manner. The assembler cross assembled all of the previous CISC instructions directly to the RISC instruction set using multiple RISC instructions if required. For example a DJNZ (decrement and jump if not zero) command is assembled as two instructions: ADD Rnum, #%FF (add negative 1) and JP NZ, label (conditional jump if not zero). Fig 1 documents the RISC instruction set and decode table. V.THE REGISTER FILE The operands are read and written to a 128 byte register file. All registers are general purpose. This register file is both double pumped meaning there are two accesses in the same time period as one ROM access (interaction fetch) and the register file is a true dual-port meaning both source operands can be read at the same time. Since it is a dual port memory there are two 8 bit data busses: A & B that connect the register file to the execution unit. The A bus is used for reading operand A and for writing the result. The B bus is only for reading operand B. Fig 2 shows the memory cell for the register file. VI.EXECUTION UNIT The execution unit consists of two operand latches, a barrel shifter, and an ALU. A.Operand Latches Two operand busses (A and B) are required for single cycle operation. Both input operands are read from the register file simultaneously. There are two non-overlapping clocks in the RISC called CK1 and CK2. The operand latches are loaded during CK1 from the register file and the output from the ALU is stored back into the register file during CK2. Note that the operand data is allowed to ripple through the latches during the time the data becomes valid. The latches are closed later to avoid corruption before the register file goes into pre-charge. Both operand latches are identical and can be independently reset or inverted (reset and invert together is a set). Clearing and inverting the operands are required for some of the operations in both the ALU and the shifter. B.Barrel Shifter This shifter can rotate right or left inserting zeroes, ones or wrapping around LSB-to-MSB. The trick is all in the layout and in how the operand registers drive it. Logically the shifter is nothing more than 8 to 1 multiplexers for every bit of the operand. Physically the A bus drives into the top and then the wires shifts down one bit to the left for each multiplexer input. Physically the B bus drives into the bottom and then the wires shifts up one bit to the right for each multiplexer input. If you drive both operands with the same value then you barrel shift. All eight shift possibilities are available at the inputs of the multiplexers. The shift amount is determined by selecting one of the eight possibilities. By clearing or setting one of the operand registers you insert either leading or trailing 0 s or 1 s as you shift. Fig 4 shows the shifter wiring.

3 3 C.ALU The Arithmetic Logic Unit can be described as a LFU (Logical Function Unit) with a generate-propagate static CMOS Manchester carry chain design. An LFU means it has a programmable truth table operation for any Boolean function of the two input operands. The four control lines: LFU0 to LFU3 specify each bit of the truth table function. Both the carry chain and the zero detect logic is buffered every four bits. To generate the result for the 8 bit ALU, the carry ripples through only four inverting stages (total) and each of these stages is an inverter. This carry chain implementation is fully static. It does not require any pre-charge clocks. Fig 3 shows the schematic for the ALU design. VII.INSTRUCTION UNIT The instruction unit consists of the Program Counter (PC), the ROM interface registers, and a hardware stack for subroutines and interrupts. A.Program Counter Register This is a 16 bit register. A separate adder which is a simplified but similar design to the ALU does the count function. This register always holds the current ROM instruction address plus one. This is the value which is pushed onto the stack for subroutine CALL s and for interrupts so that you RETURN to the next valid instruction. If the present instruction is not a jump, call, branch, etc. then the default is to use the PC register value for the next ROM address. B.The ROM Interface Registers This logic has several functions. The next ROM address is multiplexed from the Program Counter, the stack (for Returns), or the immediate value on the instruction word (for Jumps). Reset forces the address 0 and interrupt addresses can be forced to 1, 2, or 3 (which always contain unconditional jumps). This circuit also does the addressing manipulation for reading data from the ROM. The data stored in the ROM uses byte addressing which has to be unpacked from a 8Kx24 or an 16Kx24 configuration. C.The Hardware Stack The stack design is a pure synchronous implementation. It is four 16 bit registers which are always loaded every cycle. If the current opcode is a CALL then the register above it is loaded (pushed). If the current opcode is a RETURN then the register below it is loaded (popped). If the opcode is neither then its own output is multiplexed back to retain its present value. VIII.MEMORY UNIT The RISC does not have complicated memory management. However, the memory unit does the functions of the register file address generation, the A-B-C data bus multiplexing, and the flip-flops for the instruction word for data unpacking. IX.OTHER FEATURES This RISC was designed as an embedded controller for audio applications and has some unique features. A.Indirect Addressing Since the execution unit does not have a multiplier, audio compression and decompression is done by table look-up. For this function indirect addressing is very important. Both the register file addresses and the external memory addressing can be done through another set of registers. The register file addressing costs another instruction to set a unique page register. The external memory can be addressed using a register pair from the register file. The logic for the register pair addressing can also be used for indirect addressing on subroutine calls or jump instructions. B.External Register Addressing As mentioned before there are 8 address bits for the register and the register file only uses the lower 128 bytes. The higher 128 bytes are user defined to be specific registers through the integrated circuit design. These external registers interface to the RISC module through the C bus. This means that external registers can be specified as a source or destination in an ADD or other execution unit instruction. Other architectures require loading the values first to an internal register. C.User Defined Flags The RISC has the four standard condition flags for Carry, Zero, Sign, and Overflow. However there are eight flags total that can be utilized. The other four flag bits are user defined. For example this can be a signal such as a FIFO full flag. D.ROM Data Packing The instruction width is 24 bytes. However, to perform table look-up compression, data must be read from the ROM using byte addressing. The three byte wide words are packed with the LSB two data bytes sequentially up to the top of the memory and then back down using the MSB bytes. E.Hardware Stack This is a feature which can be a disadvantage. Using a hardware stack simplifies the design and speeds up the execution. The subroutine RETURN in the CISC took 19 cycles while the RETURN in the RISC takes one cycle. However, the design is limited to only four nested calls and interrupts which is sufficient for the audio design. This can be un-nerving to some programmers.

4 4 F.Large Register File The RISC has 128 bytes of general purpose registers. This was large enough that no external RAM was used for the audio application. The original CISC design did use an external RAM in addition to its internal registers. A.Engineers X.DESIGN IMPLEMENTATION The RISC was designed by Roi Peers and Robert Plachno. Roi was the architect on the PC audio chips. He did the system level design and the software coding. For the RISC he defined the requirements and helped with the architecture. Robert Plachno had designed several processors prior to this RISC including smaller embedded controllers and a larger 64 bit processor. Robert did the design and simulation of the RISC. Vincent Chueng replaced the CISC with the RISC in the audio chip and fixed the software timing issues. XI.CONCLUSION A design for a single cycle RISC processor has been discussed that does not use pipelining. This operation is obtained by folding the processor execution into the memory cycle. The RISC uses a ripple through latch style of design as opposed to a synchronous flip-flop style design. The design improvements include: 6x performance improvement. Wide power supply range for both desktop and notebook applications. No royalty fees. Minimum software impact. This is an architectural change only. No process improvements or clock rate increase were required. B.Semi-Custom Design The RISC was designed in CMOS technology and run at numerous fabrication houses from 0.6µ to 0.35µ channel lengths. The data paths were designed at a transistor level. Four sections including the data paths for the execution unit, instruction unit, memory unit, and the register file were custom laid out and placed together in a rectangular area. The remaining control logic was routed as standard cells. Figure 5 shows the PC audio chip with the RISC in the top left. C.CAE Tools The original design was entered using the ORCAD schematic tool. The simulations were done using Robert Plachno s EESIM. This simulator allows a mixed mode spice and logic netlist. Modules can be simulated at the transistor, gate or behavior level. The simulator also indicates the 10 worst (or specified) set-up times, hold times, etc and calculates the power dissipation and test vector coverage. The initial design was simulated on a PC and then progressed to a UNIX system. Eventually the schematics were recaptured into Cadence and simulated using Verilog. D.Initial Debug The design was initially done as a test chip on a multi-up mask set. This was debugged using test vectors transferred to an IMS tester. Then the CISC was replaced by the RISC in a full PC audio design. The assembler (written by Plachno) automatically cross-assembles the CISC instruction set to the RISC instruction set. However, certain parts of the program were found to be self-timed (software emulated serial port) and other problems occurred since the processor performed about 6x faster. I would describe replacing the CISC with the RISC in the design as having moderately few issues.

5 5 Figure 1. RISC Instruction Set Definition

6 6 Figure 2. Register File Dual Port Memory Cell BL1 BLB1 BL2 WL1 VCC VCC M4 M1 M8 M6 M5 M2 WLB2 VCC M9 M10 Figure 3. ALU Design

7 7 Figure 4. Barrel Shifter. Figure 5. PC Audio Chip with RISC

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1 COSC 243 Computer Architecture 1 COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1 Overview Last Lecture Flip flops This Lecture Computers Next Lecture Instruction sets and addressing

More information

Microcomputer Architecture and Programming

Microcomputer 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 information

COMPUTER ARCHITECTURE AND ORGANIZATION Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital

COMPUTER ARCHITECTURE AND ORGANIZATION Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital hardware modules that accomplish a specific information-processing task. Digital systems vary in

More information

Chapter 3 : Control Unit

Chapter 3 : Control Unit 3.1 Control Memory Chapter 3 Control Unit The function of the control unit in a digital computer is to initiate sequences of microoperations. When the control signals are generated by hardware using conventional

More information

EE 3170 Microcontroller Applications

EE 3170 Microcontroller Applications EE 3170 Microcontroller Applications Lecture 4 : Processors, Computers, and Controllers - 1.2 (reading assignment), 1.3-1.5 Based on slides for ECE3170 by Profs. Kieckhafer, Davis, Tan, and Cischke Outline

More information

Computer Architecture

Computer Architecture Computer Architecture Lecture 1: Digital logic circuits The digital computer is a digital system that performs various computational tasks. Digital computers use the binary number system, which has two

More information

Computer Architecture Programming the Basic Computer

Computer Architecture Programming the Basic Computer 4. The Execution of the EXCHANGE Instruction The EXCHANGE routine reads the operand from the effective address and places it in DR. The contents of DR and AC are interchanged in the third microinstruction.

More information

CHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY

CHAPTER 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 information

M. Sc (CS) (II Semester) Examination, Subject: Computer System Architecture Paper Code: M.Sc-CS-203. Time: Three Hours] [Maximum Marks: 60

M. Sc (CS) (II Semester) Examination, Subject: Computer System Architecture Paper Code: M.Sc-CS-203. Time: Three Hours] [Maximum Marks: 60 M. Sc (CS) (II Semester) Examination, 2012-13 Subject: Computer System Architecture Paper Code: M.Sc-CS-203 Time: Three Hours] [Maximum Marks: 60 Note: Question Number 1 is compulsory. Answer any four

More information

Reference Sheet for C112 Hardware

Reference Sheet for C112 Hardware Reference Sheet for C112 Hardware 1 Boolean Algebra, Gates and Circuits Autumn 2016 Basic Operators Precedence : (strongest),, + (weakest). AND A B R 0 0 0 0 1 0 1 0 0 1 1 1 OR + A B R 0 0 0 0 1 1 1 0

More information

UNIT-III REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT

UNIT-III REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT UNIT-III 1 KNREDDY UNIT-III REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT Register Transfer: Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Micro operations Logic

More information

COS 140: Foundations of Computer Science

COS 140: Foundations of Computer Science COS 140: Foundations of Computer Science CPU Organization and Assembly Language Fall 2018 CPU 3 Components of the CPU..................................................... 4 Registers................................................................

More information

Chapter 17. Microprogrammed Control. Yonsei University

Chapter 17. Microprogrammed Control. Yonsei University Chapter 17 Microprogrammed Control Contents Basic Concepts Microinstruction Sequencing Microinstruction Execution TI 8800 Applications of Microprogramming 17-2 Introduction Basic Concepts An alternative

More information

UNIT-II. Part-2: CENTRAL PROCESSING UNIT

UNIT-II. Part-2: CENTRAL PROCESSING UNIT Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:

More information

Micro-Operations. execution of a sequence of steps, i.e., cycles

Micro-Operations. execution of a sequence of steps, i.e., cycles Micro-Operations Instruction execution execution of a sequence of steps, i.e., cycles Fetch, Indirect, Execute & Interrupt cycles Cycle - a sequence of micro-operations Micro-operations data transfer between

More information

SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE) UNIT-I

SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE) UNIT-I SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road 517583 QUESTION BANK (DESCRIPTIVE) Subject with Code : CO (16MC802) Year & Sem: I-MCA & I-Sem Course & Branch: MCA Regulation:

More information

ECE410 Design Project Spring 2013 Design and Characterization of a CMOS 8-bit pipelined Microprocessor Data Path

ECE410 Design Project Spring 2013 Design and Characterization of a CMOS 8-bit pipelined Microprocessor Data Path ECE410 Design Project Spring 2013 Design and Characterization of a CMOS 8-bit pipelined Microprocessor Data Path Project Summary This project involves the schematic and layout design of an 8-bit microprocessor

More information

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Hardware Design Environments Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University Outline Welcome to COE 405 Digital System Design Design Domains and Levels of Abstractions Synthesis

More information

Chapter 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 information

The von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store.

The von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store. IT 3123 Hardware and Software Concepts February 11 and Memory II Copyright 2005 by Bob Brown The von Neumann Architecture 00 01 02 03 PC IR Control Unit Command Memory ALU 96 97 98 99 Notice: This session

More information

DC57 COMPUTER ORGANIZATION JUNE 2013

DC57 COMPUTER ORGANIZATION JUNE 2013 Q2 (a) How do various factors like Hardware design, Instruction set, Compiler related to the performance of a computer? The most important measure of a computer is how quickly it can execute programs.

More information

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:

1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: 1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: A microprocessor is a programmable electronics chip that has computing and decision making capabilities similar to central processing unit

More information

Blog -

Blog - . Instruction Codes Every different processor type has its own design (different registers, buses, microoperations, machine instructions, etc) Modern processor is a very complex device It contains Many

More information

Blog - https://anilkumarprathipati.wordpress.com/

Blog - https://anilkumarprathipati.wordpress.com/ Control Memory 1. Introduction The function of the control unit in a digital computer is to initiate sequences of microoperations. When the control signals are generated by hardware using conventional

More information

CN310 Microprocessor Systems Design

CN310 Microprocessor Systems Design CN310 Microprocessor Systems Design Micro Architecture Nawin Somyat Department of Electrical and Computer Engineering Thammasat University 28 August 2018 Outline Course Contents 1 Introduction 2 Simple

More information

1. Internal Architecture of 8085 Microprocessor

1. Internal Architecture of 8085 Microprocessor Practical 1 Date : AIM : Introduction Of Microprocessor 8085. 1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within µp to carry out the instruction, which has been decoded.

More information

Microcontrollers. Microcontroller

Microcontrollers. Microcontroller Microcontrollers Microcontroller A microprocessor on a single integrated circuit intended to operate as an embedded system. As well as a CPU, a microcontroller typically includes small amounts of RAM and

More information

Digital System Design Using Verilog. - Processing Unit Design

Digital System Design Using Verilog. - Processing Unit Design Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register

More information

COMPUTER ORGANIZATION AND ARCHITECTURE

COMPUTER ORGANIZATION AND ARCHITECTURE Page 1 1. Which register store the address of next instruction to be executed? A) PC B) AC C) SP D) NONE 2. How many bits are required to address the 128 words of memory? A) 7 B) 8 C) 9 D) NONE 3. is the

More information

Latches. IT 3123 Hardware and Software Concepts. Registers. The Little Man has Registers. Data Registers. Program Counter

Latches. IT 3123 Hardware and Software Concepts. Registers. The Little Man has Registers. Data Registers. Program Counter IT 3123 Hardware and Software Concepts Notice: This session is being recorded. CPU and Memory June 11 Copyright 2005 by Bob Brown Latches Can store one bit of data Can be ganged together to store more

More information

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN

CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN 6.1. Instruction Codes The organization of a digital computer defined by: 1. The set of registers it contains and their function. 2. The set of instructions

More information

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015

Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015 Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html

More information

1. Internal Architecture of 8085 Microprocessor

1. 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 information

Introduction to general architectures of 8 and 16 bit micro-processor and micro-controllers

Introduction to general architectures of 8 and 16 bit micro-processor and micro-controllers Introduction to general architectures of 8 and 16 bit micro-processor and micro-controllers A microcontroller is a microprocessor with inbuilt peripherals.a microcontroller can also be compared with a

More information

Job Posting (Aug. 19) ECE 425. ARM7 Block Diagram. ARM Programming. Assembly Language Programming. ARM Architecture 9/7/2017. Microprocessor Systems

Job Posting (Aug. 19) ECE 425. ARM7 Block Diagram. ARM Programming. Assembly Language Programming. ARM Architecture 9/7/2017. Microprocessor Systems Job Posting (Aug. 19) ECE 425 Microprocessor Systems TECHNICAL SKILLS: Use software development tools for microcontrollers. Must have experience with verification test languages such as Vera, Specman,

More information

Computer Organization CS 206 T Lec# 2: Instruction Sets

Computer Organization CS 206 T Lec# 2: Instruction Sets Computer Organization CS 206 T Lec# 2: Instruction Sets Topics What is an instruction set Elements of instruction Instruction Format Instruction types Types of operations Types of operand Addressing mode

More information

Module 5 - CPU Design

Module 5 - CPU Design Module 5 - CPU Design Lecture 1 - Introduction to CPU The operation or task that must perform by CPU is: Fetch Instruction: The CPU reads an instruction from memory. Interpret Instruction: The instruction

More information

Code No: R Set No. 1

Code No: R Set No. 1 Code No: R059210504 Set No. 1 II B.Tech I Semester Regular Examinations, November 2006 DIGITAL LOGIC DESIGN ( Common to Computer Science & Engineering, Information Technology and Computer Science & Systems

More information

PART A (22 Marks) 2. a) Briefly write about r's complement and (r-1)'s complement. [8] b) Explain any two ways of adding decimal numbers.

PART A (22 Marks) 2. a) Briefly write about r's complement and (r-1)'s complement. [8] b) Explain any two ways of adding decimal numbers. Set No. 1 IV B.Tech I Semester Supplementary Examinations, March - 2017 COMPUTER ARCHITECTURE & ORGANIZATION (Common to Electronics & Communication Engineering and Electronics & Time: 3 hours Max. Marks:

More information

Compact Integrated Processor

Compact Integrated Processor Compact Integrated Processor EE498 Report Senior Design II Jared Hayes Nick Repetti Jason Silic Faculty Advisor: Dr. R. Jacob Baker 12 May 2015 1 Table of Contents 1. Introduction......3 1.1. Introduction......3

More information

UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT

UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) contents Memory: Introduction, Random-Access memory, Memory decoding, ROM, Programmable Logic Array, Programmable Array Logic, Sequential programmable

More information

Understanding 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, 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 information

Introduction to Microprocessor

Introduction to Microprocessor Introduction to Microprocessor The microprocessor is a general purpose programmable logic device. It is the brain of the computer and it performs all the computational tasks, calculations data processing

More information

Computer Organization

Computer Organization INF 101 Fundamental Information Technology Computer Organization Assistant Prof. Dr. Turgay ĐBRĐKÇĐ Course slides are adapted from slides provided by Addison-Wesley Computing Fundamentals of Information

More information

1. Internal Architecture of 8085 Microprocessor

1. Internal Architecture of 8085 Microprocessor Practical 1 Date : AIM : Introduction Of Microprocessor 8085. 1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within µp to carry out the instruction, which has been decoded.

More information

Lab 16: Data Busses, Tri-State Outputs and Memory

Lab 16: Data Busses, Tri-State Outputs and Memory Lab 16: Data Busses, Tri-State Outputs and Memory UC Davis Physics 116B Rev. 0.9, Feb. 2006 1 Introduction 1.1 Data busses Data busses are ubiquitous in systems which must communicate digital data. Examples

More information

Computer Systems. Binary Representation. Binary Representation. Logical Computation: Boolean Algebra

Computer Systems. Binary Representation. Binary Representation. Logical Computation: Boolean Algebra Binary Representation Computer Systems Information is represented as a sequence of binary digits: Bits What the actual bits represent depends on the context: Seminar 3 Numerical value (integer, floating

More information

MICROPROGRAMMED CONTROL

MICROPROGRAMMED CONTROL MICROPROGRAMMED CONTROL Hardwired Control Unit: When the control signals are generated by hardware using conventional logic design techniques, the control unit is said to be hardwired. Micro programmed

More information

Microprocessors and Microcontrollers. Assignment 1:

Microprocessors and Microcontrollers. Assignment 1: Microprocessors and Microcontrollers Assignment 1: 1. List out the mass storage devices and their characteristics. 2. List the current workstations available in the market for graphics and business applications.

More information

Digital IP Cell 8-bit Microcontroller PE80

Digital 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 information

EKT 422/4 COMPUTER ARCHITECTURE. MINI PROJECT : Design of an Arithmetic Logic Unit

EKT 422/4 COMPUTER ARCHITECTURE. MINI PROJECT : Design of an Arithmetic Logic Unit EKT 422/4 COMPUTER ARCHITECTURE MINI PROJECT : Design of an Arithmetic Logic Unit Objective Students will design and build a customized Arithmetic Logic Unit (ALU). It will perform 16 different operations

More information

Embedded Soc using High Performance Arm Core Processor D.sridhar raja Assistant professor, Dept. of E&I, Bharath university, Chennai

Embedded Soc using High Performance Arm Core Processor D.sridhar raja Assistant professor, Dept. of E&I, Bharath university, Chennai Embedded Soc using High Performance Arm Core Processor D.sridhar raja Assistant professor, Dept. of E&I, Bharath university, Chennai Abstract: ARM is one of the most licensed and thus widespread processor

More information

COMPUTER ORGANIZATION AND DESIGN

COMPUTER ORGANIZATION AND DESIGN ARM COMPUTER ORGANIZATION AND DESIGN Edition The Hardware/Software Interface Chapter 4 The Processor Modified and extended by R.J. Leduc - 2016 To understand this chapter, you will need to understand some

More information

CAD4 The ALU Fall 2009 Assignment. Description

CAD4 The ALU Fall 2009 Assignment. Description CAD4 The ALU Fall 2009 Assignment To design a 16-bit ALU which will be used in the datapath of the microprocessor. This ALU must support two s complement arithmetic and the instructions in the baseline

More information

Chapter 3. Z80 Instructions & Assembly Language. Von Neumann Architecture. Memory. instructions. program. data

Chapter 3. Z80 Instructions & Assembly Language. Von Neumann Architecture. Memory. instructions. program. data Von Neumann Architecture The von Neumann architecture is a computer design model that uses a processing unit and a separate storage to hold both instructions and data To run a machine, program and data

More information

Chapter 2 Logic Gates and Introduction to Computer Architecture

Chapter 2 Logic Gates and Introduction to Computer Architecture Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are

More information

Intel 8086 MICROPROCESSOR. By Y V S Murthy

Intel 8086 MICROPROCESSOR. By Y V S Murthy Intel 8086 MICROPROCESSOR By Y V S Murthy 1 Features It is a 16-bit μp. 8086 has a 20 bit address bus can access up to 2 20 memory locations (1 MB). It can support up to 64K I/O ports. It provides 14,

More information

8051 microcontrollers

8051 microcontrollers 8051 microcontrollers Presented by: Deepak Kumar Rout Synergy Institute of Engineering and Technology, Dhenkanal Chapter 2 Introduction Intel MCS-51 family of microcontrollers consists of various devices

More information

UNIT I BASIC STRUCTURE OF COMPUTERS Part A( 2Marks) 1. What is meant by the stored program concept? 2. What are the basic functional units of a

UNIT I BASIC STRUCTURE OF COMPUTERS Part A( 2Marks) 1. What is meant by the stored program concept? 2. What are the basic functional units of a UNIT I BASIC STRUCTURE OF COMPUTERS Part A( 2Marks) 1. What is meant by the stored program concept? 2. What are the basic functional units of a computer? 3. What is the use of buffer register? 4. Define

More information

E3940 Microprocessor Systems Laboratory. Introduction to the Z80

E3940 Microprocessor Systems Laboratory. Introduction to the Z80 E3940 Microprocessor Systems Laboratory Introduction to the Z80 Andrew T. Campbell comet.columbia.edu/~campbell campbell@comet.columbia.edu E3940 Microprocessor Systems Laboratory Page 1 Z80 Laboratory

More information

END-TERM EXAMINATION

END-TERM EXAMINATION (Please Write your Exam Roll No. immediately) END-TERM EXAMINATION DECEMBER 2006 Exam. Roll No... Exam Series code: 100919DEC06200963 Paper Code: MCA-103 Subject: Digital Electronics Time: 3 Hours Maximum

More information

ASSEMBLY LANGUAGE MACHINE ORGANIZATION

ASSEMBLY LANGUAGE MACHINE ORGANIZATION ASSEMBLY LANGUAGE MACHINE ORGANIZATION CHAPTER 3 1 Sub-topics The topic will cover: Microprocessor architecture CPU processing methods Pipelining Superscalar RISC Multiprocessing Instruction Cycle Instruction

More information

Chapter 7 Central Processor Unit (S08CPUV2)

Chapter 7 Central Processor Unit (S08CPUV2) Chapter 7 Central Processor Unit (S08CPUV2) 7.1 Introduction This section provides summary information about the registers, addressing modes, and instruction set of the CPU of the HCS08 Family. For a more

More information

V8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs

V8-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 information

STRUCTURE OF DESKTOP COMPUTERS

STRUCTURE OF DESKTOP COMPUTERS Page no: 1 UNIT 1 STRUCTURE OF DESKTOP COMPUTERS The desktop computers are the computers which are usually found on a home or office desk. They consist of processing unit, storage unit, visual display

More information

Design and Implementation of a FPGA-based Pipelined Microcontroller

Design 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 information

Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1

Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1 Darshan Institute of Engineering & Technology for Diploma Studies Unit - 1 1. Draw and explain 4 bit binary arithmetic or adder circuit diagram. A binary parallel adder is digital function that produces

More information

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085.

1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085. (1) Draw and explain the internal architecture of 8085. The architecture of 8085 Microprocessor is shown in figure given below. The internal architecture of 8085 includes following section ALU-Arithmetic

More information

3.1 Description of Microprocessor. 3.2 History of Microprocessor

3.1 Description of Microprocessor. 3.2 History of Microprocessor 3.0 MAIN CONTENT 3.1 Description of Microprocessor The brain or engine of the PC is the processor (sometimes called microprocessor), or central processing unit (CPU). The CPU performs the system s calculating

More information

Microprocessors/Microcontrollers

Microprocessors/Microcontrollers Microprocessors/Microcontrollers A central processing unit (CPU) fabricated on one or more chips, containing the basic arithmetic, logic, and control elements of a computer that are required for processing

More information

Contents. Chapter 9 Datapaths Page 1 of 28

Contents. Chapter 9 Datapaths Page 1 of 28 Chapter 9 Datapaths Page of 2 Contents Contents... 9 Datapaths... 2 9. General Datapath... 3 9.2 Using a General Datapath... 5 9.3 Timing Issues... 7 9.4 A More Complex General Datapath... 9 9.5 VHDL for

More information

Architecture of 8085 microprocessor

Architecture of 8085 microprocessor Architecture of 8085 microprocessor 8085 consists of various units and each unit performs its own functions. The various units of a microprocessor are listed below Accumulator Arithmetic and logic Unit

More information

Major and Minor States

Major and Minor States Major and Minor States We now consider the micro operations and control signals associated with the execution of each instruction in the ISA. The execution of each instruction is divided into three phases.

More information

2. List the five interrupt pins available in INTR, TRAP, RST 7.5, RST 6.5, RST 5.5.

2. 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 information

EE 354 Fall 2015 Lecture 1 Architecture and Introduction

EE 354 Fall 2015 Lecture 1 Architecture and Introduction EE 354 Fall 2015 Lecture 1 Architecture and Introduction Note: Much of these notes are taken from the book: The definitive Guide to ARM Cortex M3 and Cortex M4 Processors by Joseph Yiu, third edition,

More information

Embedded Systems Ch 15 ARM Organization and Implementation

Embedded Systems Ch 15 ARM Organization and Implementation Embedded Systems Ch 15 ARM Organization and Implementation Byung Kook Kim Dept of EECS Korea Advanced Institute of Science and Technology Summary ARM architecture Very little change From the first 3-micron

More information

Description of the Simulator

Description of the Simulator Description of the Simulator The simulator includes a small sub-set of the full instruction set normally found with this style of processor. It includes advanced instructions such as CALL, RET, INT and

More information

Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit

Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit Design of a Pipelined 32 Bit MIPS Processor with Floating Point Unit P Ajith Kumar 1, M Vijaya Lakshmi 2 P.G. Student, Department of Electronics and Communication Engineering, St.Martin s Engineering College,

More information

Parallel logic circuits

Parallel logic circuits Computer Mathematics Week 9 Parallel logic circuits College of Information cience and Engineering Ritsumeikan University last week the mathematics of logic circuits the foundation of all digital design

More information

A 32-bit Processor: Sequencing and Output Logic

A 32-bit Processor: Sequencing and Output Logic Lecture 18 A 32-bit Processor: Sequencing and Output Logic Hardware Lecture 18 Slide 1 Last lecture we defined the data paths: Hardware Lecture 18 Slide 2 and we specified an instruction set: Instruction

More information

UNIT II OVERVIEW MICROPROCESSORS AND MICROCONTROLLERS MATERIAL. Introduction to 8086 microprocessors. Architecture of 8086 processors

UNIT II OVERVIEW MICROPROCESSORS AND MICROCONTROLLERS MATERIAL. Introduction to 8086 microprocessors. Architecture of 8086 processors OVERVIEW UNIT II Introduction to 8086 microprocessors Architecture of 8086 processors Register Organization of 8086 Memory Segmentation of 8086 Pin Diagram of 8086 Timing Diagrams for 8086 Interrupts of

More information

UPY14602-DIGITAL ELECTRONICS AND MICROPROCESSORS Lesson Plan

UPY14602-DIGITAL ELECTRONICS AND MICROPROCESSORS Lesson Plan UPY14602-DIGITAL ELECTRONICS AND MICROPROCESSORS Lesson Plan UNIT I - NUMBER SYSTEMS AND LOGIC GATES Introduction to decimal- Binary- Octal- Hexadecimal number systems-inter conversions-bcd code- Excess

More information

Computer organization and architecture UNIT-I 2 MARKS

Computer organization and architecture UNIT-I 2 MARKS Computer organization and architecture UNIT-I 1. What are the functional units? 2. what is meant by input unit? 3. What is meant by memory unit? 4. What are the operations in ALU? 5. What is meant by output

More information

REGISTER TRANSFER LANGUAGE

REGISTER TRANSFER LANGUAGE REGISTER TRANSFER LANGUAGE The operations executed on the data stored in the registers are called micro operations. Classifications of micro operations Register transfer micro operations Arithmetic micro

More information

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: 8051 Architecture Module No: CS/ES/5 Quadrant 1 e-text

e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: 8051 Architecture Module No: CS/ES/5 Quadrant 1 e-text e-pg Pathshala Subject : Computer Science Paper: Embedded System Module: 8051 Architecture Module No: CS/ES/5 Quadrant 1 e-text In this lecture the detailed architecture of 8051 controller, register bank,

More information

Implementing the Control. Simple Questions

Implementing the Control. Simple Questions Simple Questions How many cycles will it take to execute this code? lw $t2, 0($t3) lw $t3, 4($t3) beq $t2, $t3, Label add $t5, $t2, $t3 sw $t5, 8($t3) Label:... #assume not What is going on during the

More information

Tailoring the 32-Bit ALU to MIPS

Tailoring the 32-Bit ALU to MIPS Tailoring the 32-Bit ALU to MIPS MIPS ALU extensions Overflow detection: Carry into MSB XOR Carry out of MSB Branch instructions Shift instructions Slt instruction Immediate instructions ALU performance

More information

EMBEDDED SYSTEM DESIGN (10EC74)

EMBEDDED SYSTEM DESIGN (10EC74) UNIT 2 The Hardware Side: An Introduction, The Core Level, Representing Information, Understanding Numbers, Addresses, Instructions, Registers-A First Look, Embedded Systems-An Instruction Set View, Embedded

More information

MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN

MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN ROAD MAP SDK-86 Intel 8086 Features 8086 Block Diagram 8086 Architecture Bus Interface Unit Execution Unit 8086 Architecture 8086 Programmer s Model Flag Register

More information

Computer Organisation CS303

Computer Organisation CS303 Computer Organisation CS303 Module Period Assignments 1 Day 1 to Day 6 1. Write a program to evaluate the arithmetic statement: X=(A-B + C * (D * E-F))/G + H*K a. Using a general register computer with

More information

VLSI DESIGN OF REDUCED INSTRUCTION SET COMPUTER PROCESSOR CORE USING VHDL

VLSI DESIGN OF REDUCED INSTRUCTION SET COMPUTER PROCESSOR CORE USING VHDL International Journal of Electronics, Communication & Instrumentation Engineering Research and Development (IJECIERD) ISSN 2249-684X Vol.2, Issue 3 (Spl.) Sep 2012 42-47 TJPRC Pvt. Ltd., VLSI DESIGN OF

More information

Chapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics

Chapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics Chapter 4 Objectives Learn the components common to every modern computer system. Chapter 4 MARIE: An Introduction to a Simple Computer Be able to explain how each component contributes to program execution.

More information

The Itanium Bit Microprocessor Report

The Itanium Bit Microprocessor Report The Itanium - 1986 8 Bit Microprocessor Report By PRIYANK JAIN (02010123) Group # 11 Under guidance of Dr. J. K. Deka & Dr. S. B. Nair Department of Computer Science & Engineering Indian Institute of Technology,

More information

Segment 1A. Introduction to Microcomputer and Microprocessor

Segment 1A. Introduction to Microcomputer and Microprocessor Segment 1A Introduction to Microcomputer and Microprocessor 1.1 General Architecture of a Microcomputer System: The term microcomputer is generally synonymous with personal computer, or a computer that

More information

CPE300: Digital System Architecture and Design

CPE300: Digital System Architecture and Design CPE300: Digital System Architecture and Design Fall 2011 MW 17:30-18:45 CBC C316 Arithmetic Unit 10122011 http://www.egr.unlv.edu/~b1morris/cpe300/ 2 Outline Recap Fixed Point Arithmetic Addition/Subtraction

More information

BUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book

BUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book BUILDING BLOCKS OF A BASIC MICROPROCESSOR Part PowerPoint Format of Lecture 3 of Book Decoder Tri-state device Full adder, full subtractor Arithmetic Logic Unit (ALU) Memories Example showing how to write

More information

Verilog for High Performance

Verilog for High Performance Verilog for High Performance Course Description This course provides all necessary theoretical and practical know-how to write synthesizable HDL code through Verilog standard language. The course goes

More information

Topics in computer architecture

Topics in computer architecture Topics in computer architecture Sun Microsystems SPARC P.J. Drongowski SandSoftwareSound.net Copyright 1990-2013 Paul J. Drongowski Sun Microsystems SPARC Scalable Processor Architecture Computer family

More information

Introduction to Computers - Chapter 4

Introduction to Computers - Chapter 4 Introduction to Computers - Chapter 4 Since the invention of the transistor and the first digital computer of the 1940s, computers have been increasing in complexity and performance; however, their overall

More information

Topics Power tends to corrupt; absolute power corrupts absolutely. Computer Organization CS Data Representation

Topics Power tends to corrupt; absolute power corrupts absolutely. Computer Organization CS Data Representation Computer Organization CS 231-01 Data Representation Dr. William H. Robinson November 12, 2004 Topics Power tends to corrupt; absolute power corrupts absolutely. Lord Acton British historian, late 19 th

More information