JNC, JC, and JNZ Instructions for the WIMP51

Similar documents
APPENDIX A Instruction Set. Op Code. T states Flags Main Effects. Instructions

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017

VSC OFF Indicator Light Remains ON

Pipelined MIPS Datapath with Control Signals

EE 6502 UNIT-II PROGRAMMING OF 8085 MICROPROCESSOR. Prepared by S.Sayeekumar, AP/RMDEEE

EC - 311/ based Project

Tension Control Inverter

CprE 281: Digital Logic

LE010XF (LE0521W) Micro Back EMF DCC Decoder

Advanced Superscalar Architectures. Speculative and Out-of-Order Execution

CIS 662: Sample midterm w solutions

Anne Bracy CS 3410 Computer Science Cornell University. [K. Bala, A. Bracy, S. McKee, E. Sirer, H. Weatherspoon]

Locomotive decoder LE1025 1

128Mb Synchronous DRAM. Features High Performance: Description. REV 1.0 May, 2001 NT5SV32M4CT NT5SV16M8CT NT5SV8M16CT

Improving Performance: Pipelining!

Locomotive decoder LE104XF 1

CMPEN 411 VLSI Digital Circuits Spring Lecture 20: Multiplier Design

FabComp: Hardware specication

INSTRUCTIONS FOR INSTALLATION AND USE

6.823 Computer System Architecture Prerequisite Self-Assessment Test Assigned Feb. 6, 2019 Due Feb 11, 2019

Parallelism I: Inside the Core

Design Specification. DDR2 UDIMM Enhanced Performance Profiles

SDRAM DEVICE OPERATION

NOT gate (P = NOT A) AND gate (P = A AND B) Create this circuit. Create this circuit. Copy this truth table. Copy this truth table

Chapter 3: Computer Organization Fundamentals. Oregon State University School of Electrical Engineering and Computer Science.

Basic Electricity. Mike Koch Lead Mentor Muncie Delaware Robotics Team 1720 PhyXTGears. and Electronics. for FRC

Advanced Superscalar Architectures

CMU Introduction to Computer Architecture, Spring 2013 HW 3 Solutions: Microprogramming Wrap-up and Pipelining

Electro Pneumatic Workbench Scientech 2470

2006 Porsche Cayenne SUSPENSION Level Control - Diagnostics - 9pa_Cayenne. Level Control - Diagnostics - 9pa_Cayenne

Issue 2.0 December EPAS Midi User Manual EPAS35

Introduction to Digital Techniques

Automated Wardrobe Lift Installation Instructions Standard

LE010XF Micro Back EMF DCC Decoder

Upgrading Proto axle Geeps with Stewart Trucks. November 27, 2010 Mark Schutzer

EPAS Desktop Pro Software User Manual

PIPELINING: BRANCH AND MULTICYCLE INSTRUCTIONS

12 Locomotive decoder LE135 Locomotive decoder LE135 1

Runaway and derailment of a rail vehicle near Bury, Greater Manchester, 22 March 2016

The electrohydraulic brake

Throttle Cable Pull - Patent Pending By: NetGain Controls, Inc.

Registers Shift Registers Accumulators Register Files Register Transfer Language. Chapter 8 Registers. SKEE2263 Digital Systems

IMPORTANT! DO NOT THROW AWAY THE SHIPPING CARTON AND PACKING MATERIAL

Boston Gear Ratiotrol DC Motor Speed Control

DAT105: Computer Architecture Study Period 2, 2009 Exercise 2 Chapter 2: Instruction-Level Parallelism and Its Exploitation

Contents. Preface... xiii Introduction... xv. Chapter 1: The Systems Approach to Control and Instrumentation... 1

Lecture 14: Instruction Level Parallelism

VECTRIX VX-2 SERVICE MANUAL. Version 1.0/May 2011 VECTRIX, LLC

Gentex Autodim Homelink Compass Temperature Mirror Installation in 2014 Tacoma Purchased from Bob s Automotive Mirrors & More LLC (Robert Prim)

8" - 12" Hydraulic Steel Squeeze Off Tool

The DINO files: Ford GT40 set-up

ENGN1640: Design of Computing Systems Topic 05: Pipeline Processor Design

Rotel RSX-1067 RS232 HEX Protocol

ATP-2040 Electric Damper Actuator/Transmitter

Turn Signal Kit Installation Instructions for Model A Fords & Other Antique Vehicles

BMW 745Li E65/E66 Rear Brake Pad Replacement By Jerry Incollingo (Jerry 745Li)

DUAL REMOTE OIL FILTER MODIFICATION 4 TH GENERATION FIREBIRDS

PCT200 Powercast High-Function RFID Sensor Datalogger

4 x 0-10Vdc Channels Fused 24V o/p terminals for actuator power Direct or buffered output signals

Introduction to Computers and Engineering Problem Solving Spring 2012 Problem Set 8: Rail switching Due: 12 noon, Friday, April 27, 2012

Computer Architecture 计算机体系结构. Lecture 3. Instruction-Level Parallelism I 第三讲 指令级并行 I. Chao Li, PhD. 李超博士

BMS-LiFePower. 123SmartBMS. Instruction manual

OPERATING & PARTS MANUAL

RCP200 Series Motor Controls. Instruction Manual Model RCP Model RCP Model RCP202-BC1 Model RCP202-BC2 Model RCP205-BC2

Pipelining A B C D. Readings: Example: Doing the laundry. Ann, Brian, Cathy, & Dave. each have one load of clothes to wash, dry, and fold

Final Report. James Buttice B.L.a.R.R. EEL 5666L Intelligent Machine Design Laboratory. Instructors: Dr. A Antonio Arroyo and Dr. Eric M.

Hakim Weatherspoon CS 3410 Computer Science Cornell University

FILTRON 1-10 (DC/AC) BERMAD Irrigation

Low Noise Amplifiers and Low Pass Filters with Automatic Selection with Frequency.

A device that measures the current in a circuit. It is always connected in SERIES to the device through which it is measuring current.

Out-of-order Pipeline. Register Read. OOO execution (2-wide) OOO execution (2-wide) OOO execution (2-wide) OOO execution (2-wide)

CIS 371 Computer Organization and Design

Matt s Stoplight Simulation Machine Architecture and Assembly Language Training Matt Born June 2001

CFR Series. Power Inductors OUTLINE FEATURES APPLICATIONS SPECIFICATIONS MITSUMI

Rotel RSP-1570 RS232 HEX Protocol

DS1250W 3.3V 4096k Nonvolatile SRAM

EE 330 Integrated Circuit. Sequential Airbag Controller

Banco Products [I] Limited

mygrid Installation Notes

A New Buck-Boost Converter for a Hybrid-Electric Drive Stand P. Mašek

12V / 24V Magnetic Gate Lock 1200lbs with Brackets

TOYOTA LANDCRUISER V8 Twin Turbo Diesel with Automatic Transmission AB60F SPECIAL SETUP FOR RALLY

Voyager 9520/40 Eclipse 5145

ALIEM USER MANUAL R. Bocconi. REV. DATE Checked and Approved R. T.

Assessing a Site for Installation of Consumption Monitoring

DUAL SWIVEL REEL OPERATING INSTRUCTIONS

Unit 9: Static & Dynamic Scheduling

Technical manual. Hawker SmarTech. three phase

CONTENT INTRODUCTION... 3 PRESSURE SENSORS INSTALLATION... 3 PIPES CONNECTION... 4 ELECTRICAL CONNECTION TO THE UNIT... 5

LG Motorsports Diff/Trans Cooler install

Overview. References TEST SPECIFICATION FORT WORTH, TEXAS TROTTER CONTROLS REPORT X TS-0005 A MODEL ORDER TITLE BY CHK D. Tests

Embedded Systems and Software. Some Power Considerations

How I Installed the Edgerider Wheels on my Gammill Classic Plus

Servicing a Poljot 3133 movement

ST950 LRT Handbook 667/HB/46000/002

Combine Cover Manual

Installation Instructions

HARVARD TRIP BALANCE Series 1400 and 1500 Instruction Manual

FULLY SYNCHRONOUS DESIGN By Serge Mathieu

DS1230Y/AB 256k Nonvolatile SRAM

Transcription:

JNC, JC, and JNZ Instructions for the WIMP51 EE 213 For the beginning of the project I looked up the Hex code for the JNC, JC, JNZ, as well as JZ so that I could compare with how it was created with the other jump instructions needed. The Hex codes, as well as the binary codes, for each new instruction are on the Code for Testing page. The next step was to go over each write enable: ACC_WE, AUX_WE, IR_WE, REG_IN, REG_EN, C_WE, and PC_WE. With each one I checked to see if the code for the instructions needed to be off or on for Fetch, Decode, or Execute. After checking my code with all the write enables I found that my code was active or inactive as it should be for each write enable except for PC_WE and ACC_WE. Figure 1: Accumulator Write Enable one of the two write enables changed For the accumulator write enable my code was supposed to be inactive for Fetch, Decode, and Execute. However, the accumulator uses a NOR gate to show which code is not needed rather than using code to show what is needed. Every code I used was not present already in the accumulator so I had to add each one. In Figure 2 it shows that my code for JNC and JC were added with two AND gates combined through an OR gate. Figure 3 shows the JNZ that I added branched off the already created JZ code.

Figure 2: Instructions added to the ACC_WE JNC and JC Figure 3: JNZ added to eh ACC_WE The next change was to the PC_WE. After creating the new code for the PC_WE I had to create a new input for IR2. With that I had to make a new PC_WE and bring it into the program and wire IR2 to it from the ALU.

Figure 4: Program Counter Write Enable For the PC_WE all three instructions had to be added. For the instruction JNZ to differentiate it from other instructions I had to bring in IR2 which is shown in Figure 6. JNC and JC are shown at the top of Figure 5 combine into two AND gates moved into an OR. JNZ is shown in the middle branching off of the already created JZ instruction. Figure 5: JNC, JC, and JNZ added at the top and middle

Figure 6: Shows the IR2 input added to the program The jump instruction that already existed was located in the PC_ALU and that was where the rest of the new jump instructions would be added. Figure 7 below shows the new PC_ALU block that had to be input into the program after I made the changes for the carry bit to be brought in. The input for the carry bit was called COUT and rewired for the new block. Figure 7: new PC_ALU block added showing COUT For the PC_ALU the only jump instruction was originally JZ. For JZ it looked into a zero coming for a jump and so for JNZ I added a NOT to the zero. Figure 11 shows that for the JC and JNC I added a carry bit coming into the same OR as the zero commands were. Figure 9 shows that what I added to the PC_ALU was for the JZ and JNZ instructions to use IR4 and IR3 put through an AND gate as 00 respectively, and for JC and JNC they were each put through an AND gate as well as 10 respectively. After it is decided whether 00 or 10 is going through then it decides whether zero or carry is active or not.

Figure 8: Zoomed out look to show most of the changes in the PC_ALU Figure 9: Top shows IR4 and IR3 as 00 and 10 between an OR gate Figure 10: Shows the connection for IR4 and IR3

Figure 11: Shows the connection for the carry and zero bit All the new instructions and previous instructions were tested with the code in the next section. Each test was ran until ended by a SJMP which would cycle through the last command. Every jump operated as needed and would proceed or not proceed depending on what the circumstance called for.

JNC: Hex - 50 Binary - 01010000 JNZ: Hex - 70 Binary - 01110000 JC: Hex - 40 Binary - 01000000 Code for Testing Instruction Set: Address: Machine Code: MOV A, #05H 00 74 01 05 A = #05H JNZ N_1 02 70 03 05 jump to 09 N_2 SETB C 04 D3 CY = 1 JC N_3 05 40 06 0A jump to 11 MOV A,#00H 07 74 08 00 A = #00H N_1 JNZ N_2 09 70 0A F9 jump to 04 N_5 CLR C 0B C3 CY = 0 JNC N_6 0C 50 0D 0A jump to 18 N_4 SETB C 0E D3 CY = 1 JC N_5 0F 40 10 FA jump to 0B N_3 CLR C 11 C3 CY = 0 MOV A,#00H 12 74 13 00 A = #00H ADD A,#79H 14 34 15 79 A = #79H JNC N_4 16 50 17 F6 jump to 0E N_6/ BACK SJMP BACK 18 80 19 FE