Sunday, May 26, 2019
Implementation of Risc Processor in Fpga Using Verilog Essay
Reduced program line-set computers (reduced focusing set computer) atomic number 18 forgeed to have a small set of affirmations that coiffe in short clock cycles, with a small number of cycles per instruction. RISC machines are optimized to achieve efficient pipelining of their instruction streams. The machine also serves as a starting point for developing architectural variants and a more robust instruction setDesigners make high-level tradeoffs in selecting an architecture that serves an application. Once architecture has been selected, a circuit that has sufficient execution (speed) must be synthesized. Hardware description languages (HDLs) play a key role in this process by modeling the system and serving as a descriptive medium that can be apply by a synthesis tool.2. RISC (Reduced way Set Computer)The nature of RISC architecture and semiconductors rapid technical improvements, RISC embedded platforms have become the best choice for embedded applications.RISC performa nce characteristicsPower CriticalBattery powered and typically less than 2 Watts of power consumption for a whole SBC using an ARM processor, compared to around 15+ Watts for a x86-based SBC.Space CriticalWith a low power solution, the main system can fit into very compact space, eliminating heat dissipation concerns.environmental CriticalBecause of the lack of heat generation, the RISC system can be fully enclosed for total protection from the environmentCost CriticalRISC embedded solutions usually come with application-oriented processors that provide a lower cost of ownership because of faster time to market, less development risk and greater general added value.Typical RISC applications Industrial mobile platforms Touch based Human Machine Interface (HMI) Point of information (POI) or Point of Scales (POS) In fomite Telemetric Data collector Security attendler2.1 STEPS INVOLVED IN THE PROJECT3.3. Architecture of RISC Stored Program MachinepicThe machine consists of three ava ilable units Processor Controller MemoryProgram instructions and data are stored in memory. In program-directed surgery, instructions are fetched synchronously from memory, decoded, and executed to operate on data within the arithmetic and logic unit (ALU) change the contents of storage accounts change the contents of the program counter (PC), instruction register (IR) and the oral communication register ( come_R) change the contents of memory, Retrieve data and instructions from memory supremacy the movement of data on the system busses.The instruction register contains the instruction that is currently being executed. The program counter contains the address of the next instruction to be executed and the address register holds the address of the memory location that willing be addressed next by a read or write operation3.1 RISC_SPM ProcessorThe processor includes registers, datapaths, control lines, and an ALU capable of performing arithmetic and logic operations on its ope rands, subject to the opcode held in the instruction register. A multiplexer Mux_l, determines the etymon of data for Bus_l, and a second mux, Mux_2, determines the source of data for Bus_2. The input datapaths to Mux_l are from four internal general-purpose registers (RO, Rl, R2, R3), and from the Pc. Thecontents of Bus_l can be steered to the ALU, to memory, or to Bus_2 (via Mux_2). The input datapaths to Mux_2 are from the ALU, Mux_l, and the memory unit. Thus, an instruction can be fetched from memory, placed on Bus_2, and loaded into the instruction register. A word of data can be fetched from memory, and steered to a general-purpose register or to the operand register (Reg_Y) prior to an operation of the ALU. The leave behind of an ALU operation can be placed on Bus_2, loaded into a register, and subsequently transferred to memory. A dedicated register (Reg_Z) holds a flag indicating that the chair of an ALU operation is 0.3.2 RISC_SPM ControllerThe timing of all activity i s determined by the controller. The controller must steer data to the proper destination, according to the instruction being executed. Thus, the design of the controller is strongly dependent on the specification of the machines ALU and datapath resources and the clocking scheme available. Here a single clock is used, and execution of an instruction is initiated on a single edge of the clock (the rising edge). The controller monitors the state of the processing unit and the instruction to be executed and determines the value of the control signals. The controllers input signals are the instruction word and the zero flag from the ALU. The signals produced by the controller are identified as followspicThus the control unit determines when to load registers selects the path of data through the multiplexers determines when data should be written to memory Controls the three-state busses in the architecture.RISC SPM Instruction SetThe machine is controlled by a machine language program c onsisting of a set of instructions stored in memory. So, in addition to depending on the machines architecture, the design depends on the processor instruction set (i.e., the instructions that can be executed by a program). A machine language program consists of a stored ecological succession of 8-bit words (bytes). The format of an instruction of RISC_SPM can be long or short depending upon the operation.Short instructions have the format opcode source destination 0 0 1 0 0 1 1 0 Each shot instruction requires one byte of memory. The word has a 4-bit opcode, a 2-bit source register address, and a 2-bit destination register address.Long instructions have the format opcode source destination 0 1 1 0 1 0 Dont Dont cares cares address 0 0 0 1 1 1 0 1 A long instruction requires 2 bytes of memory. The first word of a long instruction contains a 4-bit opcode. The remaining 4 bits of the word can be used to specify the address of a pair of source an d destination registers, depending on the instruction. The second word contains the address of the memory word that holds an operand required by the instruction. Theinstruction mnemonics and their actions are limited below.Single-Byte Instructions NOP Here no operation is performed all registers retain their values. The address of the source and destination registers is dint cares, they have no effect. ADD Adds the contents of the source and destination registers and stores the result into destination register. AND Forms the bitwise-and of the contents of the source and destination registers and stores the result into the destination registers. NOT Forms the bitwise-and of the contents of the source register and stores the result into the destination register. SUB Subtracts the contents of the source register from destination register and stores the result into source register. Two-Byte Instructions RD Fetches a memory word from the location qualify by the second byte and loads the result into the destination register. The source register bits are dont cares which means that they are unused. WR Writes the contents of the source register to the word in memory specified by the address held in the second byte. The destination register bits are dont cares which means that they are unused. BR Branches the activity flow by loading the program counter with the word at the location (address) specified by the second byte of the instruction. The source register bits and the destination register bits are dont cares which means that they are unused. BRZ Branches the activity flow by loading the program counter with the word at the location (address) specified by the second byte of the instruction if zero flag register is asserted. The source register bits and the destination register bits are dont cares which means that they are unused.Instruction set of RISC_SPM machine Instruction Instruction Word Action Opcode Source Destination NOP 0000 None A DD 0001 src dest dest
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment
Note: Only a member of this blog may post a comment.