Using a Software-Defined Computer in Teaching the Basics of Computer Architecture and Operation

Total Page:16

File Type:pdf, Size:1020Kb

Using a Software-Defined Computer in Teaching the Basics of Computer Architecture and Operation Using a software-defined computer in teaching the basics of computer architecture and operation Julia Kosowskaa, Grzegorz Mazur*a aInstitute of Computer Science, Warsaw University of Technology, Nowowiejska 15/19, 00-665 Warszawa, Poland ABSTRACT The paper describes the concept and implementation of SDC_One software-defined computer designed for experimental and didactic purposes. Equipped with extensive hardware monitoring mechanisms, the device enables the students to monitor the computer’s operation on bus transfer cycle or instruction cycle basis, providing the practical illustration of basic aspects of computer’s operation. In the paper, we describe the hardware monitoring capabilities of SDC_One and some scenarios of using it in teaching the basics of computer architecture and microprocessor operation. Keywords: software-defined computer, real-time embedded system, microprocessor, bus protocol, instruction cycle, instruction execution 1. INTRODUCTION Our software-defined computer, named SDC_One, was developed as a proof-of-concept and didactic device. It is a complete computer based on a real classic microprocessor chip and implementing all the remaining components of a computer with a contemporary microcontroller, emulating the functionality of processor’s surrounding in firmware. We have treated the SDC_One as an advanced exercise in real-time embedded microcomputer system design, thus we implemented the computer’s logic using a microcontroller rather than an FPGA. The goal was to design a fully functional computer with extensive hardware monitoring capabilities, similar to and exceeding those found in typical microprocessor development systems built in the late 1970s and early 1980s but implemented using a contemporary technology. We insisted on using an old, legacy microprocessor for one important reason: while contemporary microcontroller circuits have very powerful debugging mechanisms, enabling advanced monitoring of device state on instruction basis, it is generally not possible to have any insight into the process of execution of an instruction because of the hardware structures of these circuits and the lack of easily-observable external buses. The primary purpose of SDC_One is the demonstration of processor’s and computer’s operation. With the level of hardware monitoring implemented in SDC_One it is easy to practically demonstrate the phases of instruction execution, stack operations, addressing modes and other aspects of processor’s activity. While all of this may be described with textbooks and pictures or demonstrated using simulation software, we find it very important to show to the students the real operation of real hardware. 2. SDC_ONE HARDWARE SDC_One contains a legacy microprocessor and a contemporary microcontroller with 32-bit ARM Cortex-M core. Four versions of SDC_One have been built, based on four different target microprocessors: the Zilog Z80 CPU1, Motorola MC680082, Intel 80853/OKI 80C85AH4 and WDC65C02S5. All versions use the same base platform – ST Microelectronics STM32L476RGT microcontroller6. The microcontroller implements the functionality of all the integrated circuits found in a classic microcomputer. It generates all the control signals, including the system clock and it implements the memory and peripheral controllers for a target computer. Physically, SDC_One consists of a NUCLEO- L476RG development board made by ST Microelectronics and a small target processor board, containing the CPU, USB mini-B connector, an RGB LED and a few passive components as shown in Figure 1. Such physical design is inexpensive and easily-reproducible; it is possible to place the CPU on a breadboard and connect it to Nucleo board using jumper wires, so students willing to experiment with SDC_One may easily clone the device at their homes. * [email protected]; www.ii.pw.edu.pl Photonics Applications in Astronomy, Communications, Industry, and High Energy Physics Experiments 2017, edited by Ryszard S. Romaniuk, Maciej Linczuk, Proc. of SPIE Vol. 10445, 104451O © 2017 SPIE · CCC code: 0277-786X/17/$18 · doi: 10.1117/12.2280769 Proc. of SPIE Vol. 10445 104451O-1 Downloaded From: http://proceedings.spiedigitallibrary.org/ on 08/08/2017 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx se Figure 1. SDC_One with the Zilog Z80 CPU. SDC_One requires only single USB cable for communicating with the PC and supplying power. It is visible to the PC as a complex USB device with one mass storage device and two virtual serial ports used for terminal connection. One of the terminals controls the hardware monitor; the other is used as a target computer console. 3. KNOWN SIMILAR PROJECTS During the implementation of our design, two similar designs were published on the web. They are software-defined computers based on the WDC W65C02S processor with the Parallax Propeller microcontroller emulating some other parts of the computer designed by Jac Goudsmit. The Parallax Propeller is a multicore microcontroller with 8 cores called cogs and 2 KiB of RAM per core. Apart from that, it also has 32 KiB of shared ROM, 32 KiB of shared RAM called hub memory, and 32 I/O lines. Except for some hobby projects, it is not widely used. The first of the aforementioned designs, named Propeddle7, uses a separate SRAM chip connected directly to the target processor, as well as some glue logic chips, such as latches and buffers, to compensate for the low number of I/O lines available in the Propeller. The Propeller microcontroller generates clock and control signals for the 65C02, activates the SRAM chip at the proper times and emulates I/O devices for the target processor. The second design, named L-Star8, is a simplified version of the Propeddle, in which the SRAM and glue logic chips were removed leaving only the 65C02 with its address, data and R/-W lines connected directly to the Propeller. The target processor’s RAM is emulated using Propeller’s 32 KiB hub memory. Since that size of memory may be insufficient for some applications, an extended version called L-Star Plus contains an SRAM chip connected to the 65C02 and controlled by the Propeller much like in the Propeddle. There are 3 main advantages of SDC_One over these designs: • SDC_One is based on a popular, standard microcontroller, not a niche device. • It does not require external memories nor any glue logic. • It provides comprehensive facilities for monitoring and controlling the operation of the target processor. 4. SDC_ONE IMPLEMENTATION The implementation of SDC_One has been in itself an exercise in advanced embedded system design because of tight timing constraints required for the correct implementation of microprocessor’s bus protocol using a microcontroller to perform all the functions of memory, peripheral controllers and glue logic found in a typical microprocessor based computer from the era of 8- and 16-bit microprocessors. A classic processor is connected to the outside world by a bus, which, while physically being a single bunch of wires, is logically divided into three parts: address bus, data bus and control bus. The last part is used to control the process of transferring information on the other two buses. The signals forming the control bus differ depending on the CPU architecture, but they typically include some signals that inform about a data transfer request and its direction. The processors used in SDC_One also have a cycle extension request signal, that is, a CPU input signal originally used to enable interfacing the processor with slower input/output devices and memory chips. The signal is checked after Proc. of SPIE Vol. 10445 104451O-2 Downloaded From: http://proceedings.spiedigitallibrary.org/ on 08/08/2017 Terms of Use: http://spiedigitallibrary.org/ss/termsofuse.aspx initializing a transfer cycle and if it is active, all the control signals remain unchanged. The signal is essential to our design as it allows the microcontroller emulating computer’s environment to make the transfer cycles arbitrary long and finalize them at its own convenience. That both gives the microcontroller ample time to perform more complex actions involved in emulating certain peripherals and enables operating the computer by stepping over individual machine cycles with the cycle being finalized by a monitor command, which is a major feature given the didactic nature of our design. Execution of a single machine cycle involves multiple actions of the CPU: • initiating the transfer by placing the transfer address on the address bus and activating certain control signals that signal data transfer request and identify the type of the cycle, • placing the data on the data bus in write cycles, • checking the state of the bus cycle extension request signal and possibly extending the cycle if requested by a peripheral module, • finalizing the transfer upon detecting inactive state of the cycle extension request signal which involves deactivating the control signals and either latching the data (in read cycles) or closing the data output buffers (in write cycles), The actions required of the microcontroller emulating the CPU’s environment are in direct correlation with the actions of the CPU and involve: • detecting the start of a new transfer cycle, • determining the type of the cycle, transfer address and direction, • performing the data transfer: o in write cycles: latching the data form the data bus, interpreting it and performing additional actions related to peripheral devices if necessary, o in read cycles: fetching the requested piece of data, placing
Recommended publications
  • The Birth, Evolution and Future of Microprocessor
    The Birth, Evolution and Future of Microprocessor Swetha Kogatam Computer Science Department San Jose State University San Jose, CA 95192 408-924-1000 [email protected] ABSTRACT timed sequence through the bus system to output devices such as The world's first microprocessor, the 4004, was co-developed by CRT Screens, networks, or printers. In some cases, the terms Busicom, a Japanese manufacturer of calculators, and Intel, a U.S. 'CPU' and 'microprocessor' are used interchangeably to denote the manufacturer of semiconductors. The basic architecture of 4004 same device. was developed in August 1969; a concrete plan for the 4004 The different ways in which microprocessors are categorized are: system was finalized in December 1969; and the first microprocessor was successfully developed in March 1971. a) CISC (Complex Instruction Set Computers) Microprocessors, which became the "technology to open up a new b) RISC (Reduced Instruction Set Computers) era," brought two outstanding impacts, "power of intelligence" and "power of computing". First, microprocessors opened up a new a) VLIW(Very Long Instruction Word Computers) "era of programming" through replacing with software, the b) Super scalar processors hardwired logic based on IC's of the former "era of logic". At the same time, microprocessors allowed young engineers access to "power of computing" for the creative development of personal 2. BIRTH OF THE MICROPROCESSOR computers and computer games, which in turn led to growth in the In 1970, Intel introduced the first dynamic RAM, which increased software industry, and paved the way to the development of high- IC memory by a factor of four.
    [Show full text]
  • Programmable Digital Microcircuits - a Survey with Examples of Use
    - 237 - PROGRAMMABLE DIGITAL MICROCIRCUITS - A SURVEY WITH EXAMPLES OF USE C. Verkerk CERN, Geneva, Switzerland 1. Introduction For most readers the title of these lecture notes will evoke microprocessors. The fixed instruction set microprocessors are however not the only programmable digital mi• crocircuits and, although a number of pages will be dedicated to them, the aim of these notes is also to draw attention to other useful microcircuits. A complete survey of programmable circuits would fill several books and a selection had therefore to be made. The choice has rather been to treat a variety of devices than to give an in- depth treatment of a particular circuit. The selected devices have all found useful ap• plications in high-energy physics, or hold promise for future use. The microprocessor is very young : just over eleven years. An advertisement, an• nouncing a new era of integrated electronics, and which appeared in the November 15, 1971 issue of Electronics News, is generally considered its birth-certificate. The adver• tisement was for the Intel 4004 and its three support chips. The history leading to this announcement merits to be recalled. Intel, then a very young company, was working on the design of a chip-set for a high-performance calculator, for and in collaboration with a Japanese firm, Busicom. One of the Intel engineers found the Busicom design of 9 different chips too complicated and tried to find a more general and programmable solu• tion. His design, the 4004 microprocessor, was finally adapted by Busicom, and after further négociation, Intel acquired marketing rights for its new invention.
    [Show full text]
  • Introduction to Cpu
    microprocessors and microcontrollers - sadri 1 INTRODUCTION TO CPU Mohammad Sadegh Sadri Session 2 Microprocessor Course Isfahan University of Technology Sep., Oct., 2010 microprocessors and microcontrollers - sadri 2 Agenda • Review of the first session • A tour of silicon world! • Basic definition of CPU • Von Neumann Architecture • Example: Basic ARM7 Architecture • A brief detailed explanation of ARM7 Architecture • Hardvard Architecture • Example: TMS320C25 DSP microprocessors and microcontrollers - sadri 3 Agenda (2) • History of CPUs • 4004 • TMS1000 • 8080 • Z80 • Am2901 • 8051 • PIC16 microprocessors and microcontrollers - sadri 4 Von Neumann Architecture • Same Memory • Program • Data • Single Bus microprocessors and microcontrollers - sadri 5 Sample : ARM7T CPU microprocessors and microcontrollers - sadri 6 Harvard Architecture • Separate memories for program and data microprocessors and microcontrollers - sadri 7 TMS320C25 DSP microprocessors and microcontrollers - sadri 8 Silicon Market Revenue Rank Rank Country of 2009/2008 Company (million Market share 2009 2008 origin changes $ USD) Intel 11 USA 32 410 -4.0% 14.1% Corporation Samsung 22 South Korea 17 496 +3.5% 7.6% Electronics Toshiba 33Semiconduc Japan 10 319 -6.9% 4.5% tors Texas 44 USA 9 617 -12.6% 4.2% Instruments STMicroelec 55 FranceItaly 8 510 -17.6% 3.7% tronics 68Qualcomm USA 6 409 -1.1% 2.8% 79Hynix South Korea 6 246 +3.7% 2.7% 812AMD USA 5 207 -4.6% 2.3% Renesas 96 Japan 5 153 -26.6% 2.2% Technology 10 7 Sony Japan 4 468 -35.7% 1.9% microprocessors and microcontrollers
    [Show full text]
  • How to Make Ez80 Code Execute Faster with Copy To
    Application Note How to Make eZ80® Code Execute Faster with Copy To RAM AN015103-1208 Abstract Two popular versions of the eZ80 offered by Zilog® are the eZ80 General-Purpose MPU This Application Note discusses how Zilog’s (eZ80L92) and the eZ80Acclaim! Family of Flash eZ80® code can execute faster by executing from MCUs, which includes the eZ80F91, eZ80F92, and RAM instead of Flash Memory, and be able to eZ80F93 devices. store the eZ80 code in Flash. With Zilog Develop- ment Studio II (ZDS II) code development tools, a eZ80L92 Features few simple changes to the project settings and the project link file are required for speedy code exe- The key features of eZ80L92 include: cution. The leddemo project that is included with the eZ80L92 device, which uses the ZDS II toolset • Single-cycle instruction fetch, high-performance, for eZ80 microprocessor unit (MPU), is used in pipelined eZ80 CPU core this Application Note as an example. However, the • Low power features including SLEEP mode, information in this document is also applicable to HALT mode, and selective peripheral power- the ZDS II toolset for eZ80Acclaim!® microcon- down control trollers unit (MCU). • Two Universal Asynchronous Receiver/Trans- Note: The source code file associated with mitters (UART) with independent baud rate gen- this application note, AN0151- erators SC01.zip is available for down- • Serial Peripheral Interface (SPI) with indepen- load at www.zilog.com. dent clock rate generator • Inter-Integrated Circuit (I2C) with independent eZ80 Overview clock rate generator eZ80 has revolutionized the communication indus- • Infrared Data Association (IrDA)-compliant try. It executes Zilog’s Z80® code four times faster infrared encoder/decoder at the same clock speed of traditional Z80s and can • New DMA-like eZ80 instructions for efficient operate at frequencies up to 50 MHz.
    [Show full text]
  • Computer Architectures an Overview
    Computer Architectures An Overview PDF generated using the open source mwlib toolkit. See http://code.pediapress.com/ for more information. PDF generated at: Sat, 25 Feb 2012 22:35:32 UTC Contents Articles Microarchitecture 1 x86 7 PowerPC 23 IBM POWER 33 MIPS architecture 39 SPARC 57 ARM architecture 65 DEC Alpha 80 AlphaStation 92 AlphaServer 95 Very long instruction word 103 Instruction-level parallelism 107 Explicitly parallel instruction computing 108 References Article Sources and Contributors 111 Image Sources, Licenses and Contributors 113 Article Licenses License 114 Microarchitecture 1 Microarchitecture In computer engineering, microarchitecture (sometimes abbreviated to µarch or uarch), also called computer organization, is the way a given instruction set architecture (ISA) is implemented on a processor. A given ISA may be implemented with different microarchitectures.[1] Implementations might vary due to different goals of a given design or due to shifts in technology.[2] Computer architecture is the combination of microarchitecture and instruction set design. Relation to instruction set architecture The ISA is roughly the same as the programming model of a processor as seen by an assembly language programmer or compiler writer. The ISA includes the execution model, processor registers, address and data formats among other things. The Intel Core microarchitecture microarchitecture includes the constituent parts of the processor and how these interconnect and interoperate to implement the ISA. The microarchitecture of a machine is usually represented as (more or less detailed) diagrams that describe the interconnections of the various microarchitectural elements of the machine, which may be everything from single gates and registers, to complete arithmetic logic units (ALU)s and even larger elements.
    [Show full text]
  • The Z80 Microprocessor Architecture
    DESIGN AND FABRICATION OF AN ELECTRONIC SYSTEM FOR MONITORING AND CONTROLLING TEMPERATURE, LIGHT ILLUMINANCE AND HUMIDITY IN A GREENHOUSE WYCLIFFE OBANDA NYANYA I56/0243/2003 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE (ELECTRONICS AND INSTRUMENTATION) IN THE SCHOOL OF PURE AND APPLIED SCIENCES OF KENYATTA UNIVERSITY APRIL 2010 DECLARATION I declare that the work presented in this thesis is my original work and has not been presented for a degree in any other university or for any other award. WYCLIFFE OBANDA NYANYA Signature………………………… Date………… PHYSICS DEPARTMENT KENYATTA UNIVERSITY We confirm that the candidate carried out the work reported in this thesis under our supervision. DR. PATRICK M. KARIMI Signature…………………….......... Date……...... PHYSICS DEPARTMENT KENYATTA UNIVERSITY P. O. BOX 43844-00100 GPO NAIROBI-KENYA DR. ABDALLAH S. MERENGA Signature……………………….... Date …………… PHYSICS DEPARTMENT KENYATTA UNIVERSITY P. O. BOX 43844-00100 GPO NAIROBI- KENYA ii DEDICATION This work is dedicated to my wife, Elizabeth, my daughters Sharon and Louise, my son Mark and to my late father Herbert Ambundo who would have loved to see it all. iii ACKNOWLEDGEMENTS I would like to take this opportunity to thank all my lecturers in the physics department for instilling confidence in me when pursuing this course. Special thanks go to my supervisors, Dr. P. M. Karimi and Dr. A. S. Merenga, for their guidance throughout this research. I also wish to thank my colleague John Githaiga for his useful suggestions. The technicians in the Physics department were very helpful to me during the construction of the system. I also wish to thank my wife Elizabeth Obanda for her moral support and patience.
    [Show full text]
  • Time: Office Hour: TR 03:20Am ~ 05:20Pm Website
    EE‐446 Embedded Architectures (2014CSULA) 09/25/14 Instructor: Airs Lin Mentor: Dr. Charles Liu Time: . SEC1:TR 01:30PM~03:10PM . SEC2:TR 09:50AM~11:30AM Office Hour: TR 03:20am ~ 05:20pm Website: http://EE446.is‐an‐Engineer.com Email: [email protected] 1 EE‐446 Embedded Architectures (2014CSULA) 09/25/14 Week 1: . Introduction to Embedded Systems Week 2, 3: . UML in Embedded System Design . Homework 1: Embedded proposal . Homework 2: UML Week 4: . Memory Technology Week 5: . Peripheral Interfaces Week 6: . Microcontroller (Cypress PSoC 5) . PSoC Project Week 7: . PSoC Project Week 8: . Introduction to FPGA . Altera System on Chip (SoC) 2 EE‐446 Embedded Architectures (2014CSULA) 09/25/14 Week 9: . FPGA Project (Handshaking) Week 10: . FPGA Project (Handshaking) Final Week. 3 EE‐446 Embedded Architectures (2014CSULA) 09/25/14 Embedded Systems is a computer inside a product Computer system which is part of some other equipment Typically dedicated software (may be user‐ customizable) May be required to respond to events in real time A special‐purpose computer system Designed to perform one or a few dedicated functions, sometimes with real‐time computing constraints. Usually containing sensors and actuators (and its control loop) Usually embedded as part of another system 4 EE‐446 Embedded Architectures (2014CSULA) 09/25/14 Providing pervasive computational intelligence Appliance, equipment, facilities are getting more intelligent . Predicting your need . Optimizing consumption, performance . Coordinate with each other 5 EE‐446 Embedded Architectures (2014CSULA) 09/25/14 Early era: purposely built chips and boards . Integrating mostly analog components . Hardwired computation logic Recent: rise of cheap general purpose microprocessors .
    [Show full text]
  • Development of Microprocessor Learning Media Using Zilog Z-80 For
    Jurnal Pendidikan Vokasi Volume 8, No 3, November (238-248) Online: http://journal.uny.ac.id/index.php/jpv DEVELOPMENT OF MICROPROCESSOR LEARNING MEDIA USING ZILOG Z-80 FOR VOCATIONAL SCHOOL STUDENTS OF ELECTRONIC ENGINEERING EXPERT PROGRAM Nurul Fitri Fathia Universitas Negeri Jakarta Ivan Hanafi Universitas Negeri Jakarta Muhammad Rif’an Universitas Negeri Jakarta Abstract This development research aims to develop microprocessor learning media using Zilog Z80. The Learning Media quality is based on the following aspects: (1) media feasibility according to subject matter experts and media experts; (2) effective based on students ability test by pre test and post- test. The developed cycles and procedures refer to the ADDIE model (analysis, design, development, implementation, and evaluation). This development research produces learning media as microprocessor kits training and e-Learning namely “µProsessor” as learning support. Data analysis techniques to test the effectiveness of learning media using Paired Samples T-Test and Using a Likert scale to test the feasibility of learning media. The research results show that the feasibility of learning media is enough with a high score of above 88% and Paired Samples Test results for media effectiveness show an increase in the value of significant microprocessor capabilities. Measuring the improvement of the ability of students' microprocessors using N-gain (normalized gain). The results of the calculation of N-gain in the large group is 0.72 in the high category. Interpretation of the results of the research can be concluded that effective learning media as a learning media for microprocessors. Keywords: learning media, research and development, ADDIE model, microprocessors Permalink: http://dx.doi.org/10.21831/jpv.v8i3.20795 Contact Nurul Fitri Fathia [email protected] Universitas Negeri Jakarta, Jl.
    [Show full text]
  • TTL and CMOS Logic 74 Series
    TTL and CMOS logic 74 Series TTL and CMOS logic 74 Series ! Datasheets ¡¡ CLICK HERE for the TTL and CMOS logic listings! CLICK HERE for links to other useful datasheet sites! This page contains links to datasheets for all the IC's used in my projects, click the part number to read the datasheet. Some of these I scanned myself, others are located on others' pages or the manufacturer's website. If there are any broken links tell me. To read these datasheets you need to install Adobe Acrobat if you haven't already done so. The scanned datasheets are sometimes easiest to read if you select "Actual Size" in Adobe Acrobat's "View" menu. A number of these parts are obsolete, and several more will probably become obsolete very soon. I have saved local copies of all of the datasheets linked here, so that they will be preserved if the manufacturers decide to remove the datasheets from their websites. In this case I will replace the URL with a local link. If you find any broken links, let me know. Many IC's are made by multiple manufacturers, and there have been many rounds of mergers, aquisitions and consolidations in the semiconductor industry. Therefore the manufacturers listed here are not necessarily the ones whose IC's I used, but in all cases chips from a different manufacturer should be interchangeable. In general 74nn chips and 74LSnn chips can also be interchanged, I simply used what was available to me at the time. Part Description Manufacturer Size Notes ¡¡ ¡¡ ¡¡ ¡¡ ¡¡ http://www.datasheet4u.com/TTL/TTL.html (1 z 22)1.10.2007 17:46:45
    [Show full text]
  • Microprocessor Wikipedia,TheFreeEncyclopedia Page 1Of 16
    Microprocessor - Wikipedia,thefreeencyclopedia Page 1of 16 Microprocessor From Wikipedia,the free encyclopedia A microprocessor incorporatesthefunctionsof acomputer's central processingunit(CPU)onasingle integratedcircuit,[1] (IC)oratmostafewintegratedcircuits. [2]Itisa multipurpose,programmabledevicethataccepts digitaldata asinput,processesitaccordingtoinstructionsstoredinits memory,andprovidesresultsasoutput.Itisanexampleof sequentialdigitallogic,asithasinternalmemory. Microprocessorsoperateonnumbersandsymbols representedin the binarynumeralsystem. Theadventoflow-costcomputersonintegratedcircuitshas transformedmodernsociety.General-purpose microprocessorsinpersonalcomputersareusedfor computation,textediting,multimediadisplay,and Intel 4004,thefirstgeneral-purpose, communicationovertheInternet.Manymore commercial microprocessor microprocessorsare partof embeddedsystems,providing digitalcontrolofamyriadofobjectsfromappliancesto automobilestocellular phonesandindustrial processcontrol. Contents ■ 1Origins ■ 2Embeddedapplications ■ 3Structure ■ 4Firsts ■ 4.1Intel4004 ■ 4.2TMS1000 ■ 4.3Pico/GeneralInstrument ■ 4.4CADC ■ 4.5GilbertHyatt ■ 4.6Four-PhaseSystemsAL1 ■ 58bitdesigns ■ 612bitdesigns ■ 716bitdesigns ■ 832bitdesigns ■ 964bitdesignsinpersonalcomputers ■ 10Multicoredesigns ■ 11RISC ■ 12Special-purposedesigns ■ 13Marketstatistics ■ 14See also ■ 15Notes ■ 16References ■ 17Externallinks http://en.wikipedia.org/wiki/Microprocessor 2012 -03 -01 Microprocessor -Wikipedia,thefreeencyclopedia Page 2of 16 Origins Duringthe1960s,computer processorswereconstructedoutofsmallandmedium-scaleICseach
    [Show full text]
  • ZILOG Z80 PIO USER=S MANUAL Page 1 of 22 TABLE of CONTENTS
    ZILOG Z80 PIO USER=S MANUAL Page 1 of 22 TABLE OF CONTENTS Chapter 1. Introduction Page 1.0 Introduction.......................................... 3 1.1 Features.............................................. 3 Chapter 2. Architecture 2.0 Overview ............................................ 4 Chapter 3. Pin Description 3.0 Pin Description.................................... 6 Chapter 4. Programming the PlO 4.0 Reset................................................... 9 4.1 Loading the interrupt Vector................. 9 4.2 Selecting an Operating Mode............... 10 4.3 Setting the Interrupt Control Word........ 11 Chapter 5. Timing 5.0 Output Mode (Mode 0).......................... 12 5.1 Input Mode (Mode 1)..........................… 13 5.2 Bidirectional Mode (Mode 2)...............… 13 5.3 Control Mode (Mode 3)......................... 14 Chapter 6. Interrupt Servicing 6.0 Interrupt servicing................................. 16 Chapter 7. Applications 7.0 Extending the Interrupt Daisy Chain....... 18 7.1 I/O Device Interface............................... 18 7.2 Control interface.................................... 19 Chapter 8. Programming Summary 8.0 Load Interrupt Vector............................. 22 8.1 Set Mode............................................... 22 8.2 Set Interrupt Control.............................. 22 ZILOG Z80 PIO USER=S MANUAL Page 2 of 22 List of figures Page Figure 2 -1 PIO Block Diagram................................ 5 Figure 2 -2 Port I/O Block Diagram.......................... 5 Figure 3 -1 PIO Pin
    [Show full text]
  • Gnu Assembler
    Using as The gnu Assembler (Sourcery G++ Lite 2010q1-188) Version 2.19.51 The Free Software Foundation Inc. thanks The Nice Computer Company of Australia for loaning Dean Elsner to write the first (Vax) version of as for Project gnu. The proprietors, management and staff of TNCCA thank FSF for distracting the boss while they gotsome work done. Dean Elsner, Jay Fenlason & friends Using as Edited by Cygnus Support Copyright c 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled \GNU Free Documentation License". i Table of Contents 1 Overview :::::::::::::::::::::::::::::::::::::::: 1 1.1 Structure of this Manual :::::::::::::::::::::::::::::::::::::: 14 1.2 The GNU Assembler :::::::::::::::::::::::::::::::::::::::::: 15 1.3 Object File Formats::::::::::::::::::::::::::::::::::::::::::: 15 1.4 Command Line ::::::::::::::::::::::::::::::::::::::::::::::: 15 1.5 Input Files :::::::::::::::::::::::::::::::::::::::::::::::::::: 16 1.6 Output (Object) File:::::::::::::::::::::::::::::::::::::::::: 16 1.7 Error and Warning Messages :::::::::::::::::::::::::::::::::: 16 2 Command-Line Options::::::::::::::::::::::: 19 2.1 Enable Listings: `-a[cdghlns]'
    [Show full text]