16 IO Techniques TOC.Pdf

Total Page:16

File Type:pdf, Size:1020Kb

16 IO Techniques TOC.Pdf CSC414 I/O Techniques Computer Input/Output Techniques for communicating data and commands CPU System Techniques Programmed I/O Fundamentals - CPU initiates communication with Command external device Memory Interrupt Driven I/O - External input initiates communication Digital Forensics Center with CPU THINK BIG WE DO I HaveDataData Data! Department of Computer Science and Statics Direct Memory Access (DMA) Device Controller - Method for transferring data between U R I main memory and a device that http://www.forensics.cs.uri.edu bypasses the CPU Programmed I/O Interrupts Programmed I/O Devices need a mechanism to Current Program get the CPU's attention - Direct CPU controlled I/O Memory Data Instruction Register Register - Device has completed a request Fetch - Integrated into the Fetch/Execute cycle - Disk buffer is full and ready to transfer - CPU Instruction contains device address and CPU Execute command I/OData Data I/OI/O ControlInterface I/O Address - Notify that an external event occurred Register Register Register - MDR contains data to transfer - Real-time or time-sensitive - Can transfer one register of data per cycle - Allocate CPU time (System Clock) Interrupt? - Multitasking, Mulitprocessing - One word - 16-bit, 32-bit, 64-bit Device Buffer - Indicate abnormal event - Suitable only for slow devices and Device Controller individual word transfers - illegal operation, hardware error - CPU originates for notification and recovery) - Keyboards - User Programs (Software Interruption!) Interrupts Interrupts - Hardware Interrupt Current Program Operating System Implementing Interrupts Operating System - Signal causing the CPU to alter its - Interrupt lines (hardware) (INT) normal flow of instruction Fetch Save Current Save Current Program Context - One or more special control lines to the CPU Program Context execution - I/O Advanced Programmable Interrupt Controller - Frees CPU from waiting for events Yes Yes Execute Determine which (IOAPIC) receives Interrupt Request from device Determine which Provides control for external I/O device caused device caused - - Device needing attention sends Interrupt Request initiation interrupt interrupt (IRQ) No Interrupt? Interrupt? - "Interrupt ID" of the device (16 bits) Execute Interrupt Execute Interrupt Handler for Handler for device INT device IOAPIC 0000IRQ 1110 Memory I/O Controller Device Controller Unit Hub Restore Program Controller Restore Program Context (Northbridge) (Southbridge) Context Interrupts Interrupts Implementing Interrupts Operating System Implementing Interrupts Operating System IRQ Standard device Assignment - Saving Current Program Context - Vectored interrupt 0 System Time Save Current Save Current 1 Keyboard - Saved registers of a program before control is Program Context - Address of interrupting device is included in the Program Context interrupt 2 Cascade to IRQ9. Can't be used transferred to the interrupt handler 3 COM ports 2 and 4 Yes Yes - Requires additional hardware to implement 4 COM ports 1 and 3 - Allows program to resume exactly where it left off Determine which Determine which 5 Parallel Port LPT2. (Sound cards) when control returns to interrupted program device caused device caused - Polling 6 Floppy drive controller interrupt interrupt - Program Counter (PC) is important! - Identifies interrupting device by polling each device 7 Parallel Port, LPT1 Interrupt? 8 Interrupt?Real Time Clock - General interrupt is shared by all devices 9 Unassigned (Also redirected from IRQ2) Execute Interrupt Execute Interrupt Handler for 10 Available Handler for INT device INT 11 Available - Usually fordevice SCSI adapter IOAPIC 0000IRQ 1110 IOAPIC 0000IRQ 1110 12 Mouse or touch pads 13 Math co-processor Memory I/O Controller Device Memory I/O Controller Device 14 Primary hard-disk IDE controller Controller Unit Hub Restore Program Controller Unit Hub Restore Program Controller Controller15 Secondary hard-disk controller (Northbridge) (Southbridge) Context (Northbridge) (Southbridge) Context Interrupts Direct Memory Access Implementing Interrupts Operating System Transferring large blocks of data can - Interrupt handlers (OS Dependent) tie up CPU Save Current - Program that services the interrupt IRQ InterruptProgram Handler ContextAddress - During transfer CPU is not interacting with 0 0x00A000 user - Also known as an interrupt routine 1 Yes0x00B000 2 0x00C000Determine which - Part of device driver code 3 0x00D000 device caused - IRQ is used as a reference into a table 4 0x00D800 interrupt that stores the interrupt handler Interrupt? locations Execute Interrupt Memory For time sharing or Handler for INT device multiprocessing,IOAPIC the interruptIRQ handler restores the context Memory I/O Controller Device Memory I/O Controller Device of the next program that is Send It! I HaveData Data! Controller Unit Hub Restore Program Send It! Controller Unit Hub Data 0000 1110 schedule for the CPU. Controller Controller (Northbridge) (Southbridge) Context CPU (Northbridge) (Southbridge) Direct Memory Access Direct Memory Access (DMA) is solution CPU sends - CPU initiates transfer (Programmed I/O) To implement DMA: • location of data on I/O device system needs a DMA Input/Output - Device directly transfers data to or from memory •the starting location in • controller for memory - CPU not actively involved in transfer itself memory • each device needs a DMA • the size of the block - Device sends interrupt to notify CPU of completion enabled controller Techniques • read/write Memory Digital Forensics Center Department of Computer Science and Statics THINK BIG WE DO Memory Memory I/O Controller Send It Controller Unit Device To Memory Controller Unit Hub II'm HaveData Datadone! Data! U R I with DMA Controller CPU (Northbridge)Controller (Southbridge) http://www.forensics.cs.uri.edu.
Recommended publications
  • Direct Memory Access Components Verification System
    ТРУДЫ МФТИ. — 2012. — Том 4, № 1 Frolov P. V. et al. 1 УДК 004.052.42 P. V. Frolov, V. N. Kutsevol, A. N. Meshkov, N. Yu. Polyakov, M. P. Ryzhov AO «MCST» PAO «INEUM» Direct Memory Access components verification system A method of direct memory access subsystem verification used for Elbrus series micro- processors has been described. A peripheral controller imitator has been developed in order to reduce verification overhead. The model of imitator has been included into the functional machine simulator. A pseudorandom test generator for verification of the direct memory access subsystem has been based on the simulator. Ключевые слова: system verification, functional model, direct memory access, pseu- dorandom test generation. Direct Memory Access components verification system 1. Introduction Modern computer systems require very intensive data exchange between the peripheral de- vices and the random-access memory. In the most cases this exchange is performed by the direct memory access (DMA) subsystem. The increasing demands for the performance of the subsys- tem lead to an increase in its complexity, therefore requiring development of effective approaches to DMA subsystem verification [1,2]. This article is based on a result of a comprehensive project than combined implementation of a there co-designed verification techniques based on the consecutive investigation of theDMA subsystem employing one the three models: 1) a functional model written in C++ that corre- sponds to behaviour of the subsystem in the environment determined by a real computer system configuration, 2) RTL model in Verilog and 3) FPGA-based prototype. This article describesthe first method that enables verifying correctness of the design at an early stage of the verification and eliminate a large quantity of bugs using simple tests.
    [Show full text]
  • VIA RAID Configurations
    VIA RAID configurations The motherboard includes a high performance IDE RAID controller integrated in the VIA VT8237R southbridge chipset. It supports RAID 0, RAID 1 and JBOD with two independent Serial ATA channels. RAID 0 (called Data striping) optimizes two identical hard disk drives to read and write data in parallel, interleaved stacks. Two hard disks perform the same work as a single drive but at a sustained data transfer rate, double that of a single disk alone, thus improving data access and storage. Use of two new identical hard disk drives is required for this setup. RAID 1 (called Data mirroring) copies and maintains an identical image of data from one drive to a second drive. If one drive fails, the disk array management software directs all applications to the surviving drive as it contains a complete copy of the data in the other drive. This RAID configuration provides data protection and increases fault tolerance to the entire system. Use two new drives or use an existing drive and a new drive for this setup. The new drive must be of the same size or larger than the existing drive. JBOD (Spanning) stands for Just a Bunch of Disks and refers to hard disk drives that are not yet configured as a RAID set. This configuration stores the same data redundantly on multiple disks that appear as a single disk on the operating system. Spanning does not deliver any advantage over using separate disks independently and does not provide fault tolerance or other RAID performance benefits. If you use either Windows® XP or Windows® 2000 operating system (OS), copy first the RAID driver from the support CD to a floppy disk before creating RAID configurations.
    [Show full text]
  • Get More out of the Intel Foxhollow Platform
    Get More Out Of the Intel Foxhollow Platform Akber Kazmi, Marketing Director, PLX Technology Introduction As being reported by the mainstream technology media, Intel is leveraging the technology from its latest server-class Nehalem CPU to offer the Lynnfield CPU, targeted for high-end desktop and entry-level servers. This platform is codenamed “Foxhollow “. Intel is expected to launch this new platform sometime in the second half of 2009. This entry-level uni-processor (UP) server platform will feature two to four cores as Intel wants to pack a lot of processing power in all its platforms. The Foxhollow platform is quite different from the previous Desktops and UP servers in that it reduces the solution from three chips to two chips by eliminating the northbridge and replacing the southbridge with a new device called the Platform Controller Hub (or PCH) code named Ibexpeak (5 Series Chipset). As Intel has moved the memory controller and the graphics function into the CPU, there's no need for an MCH (Memory Controller Hub), so Intel has simplified its chipset design to keep costs down in the entry-level and mainstream segments. The PCH chip interfaces with the CPU through Intel’s DMI interconnect. The PCH will support eight PCIe lanes, up to four PCI slots, the GE MAC, display interface controllers, I/O controllers, RAID controllers, SATA controllers, USB 2.0 controllers, etc. Foxhollow Motherboards Foxhollow motherboards are being offered in two configurations, providing either two or three x8 PCIe ports for high performance I/Os. However, motherboard vendors can use an alternate configuration that provides one more PCIe x8 port with no significant burden and instead offers 33% more value than the three port solution and 50% more value than the two port solution.
    [Show full text]
  • Motherboards, Processors, and Memory
    220-1001 COPYRIGHTED MATERIAL c01.indd 03/23/2019 Page 1 Chapter Motherboards, Processors, and Memory THE FOLLOWING COMPTIA A+ 220-1001 OBJECTIVES ARE COVERED IN THIS CHAPTER: ✓ 3.3 Given a scenario, install RAM types. ■ RAM types ■ SODIMM ■ DDR2 ■ DDR3 ■ DDR4 ■ Single channel ■ Dual channel ■ Triple channel ■ Error correcting ■ Parity vs. non-parity ✓ 3.5 Given a scenario, install and configure motherboards, CPUs, and add-on cards. ■ Motherboard form factor ■ ATX ■ mATX ■ ITX ■ mITX ■ Motherboard connectors types ■ PCI ■ PCIe ■ Riser card ■ Socket types c01.indd 03/23/2019 Page 3 ■ SATA ■ IDE ■ Front panel connector ■ Internal USB connector ■ BIOS/UEFI settings ■ Boot options ■ Firmware upgrades ■ Security settings ■ Interface configurations ■ Security ■ Passwords ■ Drive encryption ■ TPM ■ LoJack ■ Secure boot ■ CMOS battery ■ CPU features ■ Single-core ■ Multicore ■ Virtual technology ■ Hyperthreading ■ Speeds ■ Overclocking ■ Integrated GPU ■ Compatibility ■ AMD ■ Intel ■ Cooling mechanism ■ Fans ■ Heat sink ■ Liquid ■ Thermal paste c01.indd 03/23/2019 Page 4 A personal computer (PC) is a computing device made up of many distinct electronic components that all function together in order to accomplish some useful task, such as adding up the numbers in a spreadsheet or helping you to write a letter. Note that this defi nition describes a computer as having many distinct parts that work together. Most PCs today are modular. That is, they have components that can be removed and replaced with another component of the same function but with different specifi cations in order to improve performance. Each component has a specifi c function. Much of the computing industry today is focused on smaller devices, such as laptops, tablets, and smartphones.
    [Show full text]
  • Shuttle XPC Cube Barebone SH370R6V2 – Connectors
    Product Specification Supports 8th/9th generation Intel Core XPC cube Barebone CPUs and up to three UHD displays SH370R6V2 The Shuttle XPC Barebone SH370R6V2 shows how discreet a modern PC can look and at the same time how powerful it can be. Its black- brushed aluminium case has barely a volume of 14 litres, but packs everything you need for a high-performance workstation for example. This includes the power of 8th/9th gen. Intel Core processors, a dual- slot graphics card, fast M.2 NVMe SSD drives, two 3.5’’ hard drives in 8/9th.Gen. 4x DDR4 Dual Triple UHD RAID and up to 128 GB of DDR4 memory, plus a Blu-ray drive. Even Intel Core max. 128GB LAN Display without a dedicated graphics card, up to three UHD displays are supported optionally [3]. Feature Highlights only. purposes illustration for Pictures . Black aluminium chassis (13.6-litre) R6 Chassis Dimensions: 33.2 x 21.5 x 19.0 cm (LWH) Bays: 1x 5.25“, 2x 3.5“ (1x external) Socket LGA 1151v2 supports the 8th and 9th generation Intel Core processors “Coffee Lake” Does not support older LGA 1151 processors. CPU Supports Intel Core i9/i7/i5/i3, Pentium Gold and Celeron Shuttle I.C.E. Heatpipe cooling system Operating Supports Windows 10 and Linux (64-bit) System Optional Optional Intel graphics (depends on CPU [3]) Graphics Supports three digital UHD displays at once Chipset Intel H370 PCH Supports up to 4x 32 GB DDR4-2400/2666 DIMM Memory memory modules (total max. 128 GB) [5] 1x PCIe x16 (v3.0) supports dual-slot graphics Slots cards up to 273 mm length (PCI-E and 1x PCIe x4 (v3.0) M.2) 1x M.2-2280 (SATA / PCIe X4) supports M.2 SSDs 1x M.2-2230 supports WLAN cards SATA 4x SATA 3.0 (6Gb/s) supports RAID and RST Video: HDMI 2.0a and 2x DisplayPort 1.2 Other 4x USB 3.2 Gen 2, 4x USB 3.2 Gen 1, 4x USB 2.0 Connectors 2x Intel LAN.
    [Show full text]
  • J7F3 Mini-ITX Motherboard Series
    Mainboard Diagram J7F3 Mini-ITX Motherboard Series -SiS 741CX Northbridge + SiS 964 Southbridge Chipsets -Support Socket-462 AMD Geode NX processor -Support Front Side Bus 133MHz -Single Channel DDR2 400 Memory DIMM -Support 2 Serial ATA Devices with RAID 0, 1 -Support 2xAD Connector With Expansion Daughter-boards -Ethernet LAN Supported -AC’97 6 Channel Audio CODEC -VIA VT6307S IEEE1394a Controller for J7F3E -17 x 17CM Mini-ITX Form Factor Features and Benefits Support Socket 462 AMD Geode™ NX Processor The AMD Geode™ NX processor family gives product designers a wide range of options in low-power, high-performance processors. Based on Mobile AMD Athlon™ processor technology, AMD NX processors deliver superior computing performance for applications including thin-client, point-of-sale terminals, kiosks, high-end printers, and home media systems. AMD Geode Solutions have received new model numbers to better reflect total performance beyond just megahertz. This presentation of attributes gives designers greater understanding of the capabilities of AMD Geode Solutions. SiS 741CX Northbridge Chipset and SiS964 Southbridge Chipset The SiS741CX chipset can be combined with three different AMD Geode NX processors, including the AMD Geode™ NX 1250@6W processor*, AMD Geode™ NX 1500@6W processor** and AMD Geode™ NX 1750@14W processor***, enabling development of a wider variety of products for different market segments. The SiS741CX chipset supports the AMD Geode NX processor family, DDR266 front side bus, as well as high-speed DDR333 DRAM. Furthermore, the SiS741CX chipset incorporates SiS's revolutionary HyperStreaming™ Technology, which provides multiple divided pipelines for data, allows data to be sent concurrently, and separates data for easier memory retrieval, resulting in a remarkable reduction in latency versus traditional chipsets.
    [Show full text]
  • PCIE-Q870-I2 PICMG 1.3 CPU Card
    PCIE-Q870-i2 PICMG 1.3 CPU Card MODEL: PCIE-Q870-i2 Full-Size PICMG 1.3 CPU Card Supports LGA1150 Intel® Core™ i7/i5/i3, Pentium® or Celeron® CPU, Intel® Q87 Chipset, DDR3, VGA, iDP, Dual Intel® PCIe GbE, SATA 6Gb/s, PCIe Mini, mSATA, RS-232, HD Audio, iRIS-2400 and RoHS User Manual Page i Rev. 1.05 – November 13, 2015 PCIE-Q870-i2 PICMG 1.3 CPU Card Revision Date Version Changes November 13, 2015 1.05 Updated Section 1.6: Technical Specifications Updated Section 2.4: Optional Items Updated Chapter 5: BIOS March 23, 2015 1.04 Updated Section 4.3.3: Flash Descriptor Security Override Jumper November 5, 2014 1.03 Updated PCIe specifications on page 7 June 16, 2014 1.02 Modified LAN pinouts Updated Chapter 2: Packing List March 24, 2014 1.01 Deleted I2C information Updated Section 2.4: Optional Items January 14, 2014 1.00 Initial release Page ii PCIE-Q870-i2 PICMG 1.3 CPU Card Copyright COPYRIGHT NOTICE The information in this document is subject to change without prior notice in order to improve reliability, design and function and does not represent a commitment on the part of the manufacturer. In no event will the manufacturer be liable for direct, indirect, special, incidental, or consequential damages arising out of the use or inability to use the product or documentation, even if advised of the possibility of such damages. This document contains proprietary information protected by copyright. All rights are reserved. No part of this manual may be reproduced by any mechanical, electronic, or other means in any form without prior written permission of the manufacturer.
    [Show full text]
  • ISC101.2-1-06-Motherboard.Pdf
    Here you can see an annotated photo of a motherboard. It dates from 2007, so some of its components and connectors are a little outdated, but most of them stay the same in nowadays personal computers. In a modern personal computer motherboard we have: Power connectors to get electrical power from the power supply A socket to install a CPU. In some cases the CPU is directly soldered to the computer Slots to install the system’s main memory A chipset which interfaces the CPU with the main memory and the peripheral buses Non-volatile memory chips containing the system’s firmware needed to load the operating system from the hard disk (known as BIOS for Basic Input/output System) A CMOS memory chip and its battery A clock generator which produces the system’s clock signal to synchronize the various components Slots for expansion cards, that give access to the peripheral bus managed by the chipset An integrated controller for permanent storage devices, typically a SATA bus driver, and its connectors An integrated controller for keyboard and mouse. In legacy computers we will find also a serial and parallel port. All of them have been substituted by USB bus. One or several integrated USB bus controllers to connect external peripherals. The current USB standard is 3.1 Heat sinks and mounting points for fans to dissipate excess heat In modern motherboards a lot of functions that were initially provided with expansion cards are now integrated, so we can find a graphics controller, a sound card and a gigabit ethernet network controller and their connectors.
    [Show full text]
  • User's Manual
    User’s Manual 3301570 3301570 Revision History Title 3301570 Intel Pentium D/Pentium 4 LGA775 CPU board Revision Number Description Date of Issue 1.0 Initial release March 2006 Copyright Notice The information in this document is subject to change without prior notice in order to improve reliability, design and function and does not represent a commitment on the part of the manu- facturer. In no event will the manufacturer be liable for direct, indirect, special, incidental, or consequential damages arising out of the use or inability to use the product or documentation, even if advised of the possibility of such damages. This document contains proprietary information protected by copyright. All rights are reserved. No part of this manual may be reproduced by any mechanical, electronic, or other means in any form without prior written permission of the manufacturer. Trademarks IBM PC is a registered trademark of International Business Machines Corporation. INTEL is a registered trademark of INTEL Corporation. AMI is registered trademarks of American Megatrends Inc. Other product names mentioned herein are used for identification purposes only and may be trademarks and/or registered trademarks of their respective owners. Page 2 3301570 Table of Contents Revision History ·························································································································· 2 Copyright Notice·························································································································· 2 Trademarks···································································································································
    [Show full text]
  • TECHNICAL MANUAL of Intel 945GC +Intel 82801G Based Mini-ITX M/B
    TECHNICAL MANUAL Of Intel 945GC +Intel 82801G Based Mini-ITX M/B For Intel Atom Processor NO.G03-NC92-F Rev1.0 Release date: Oct., 2008 Trademark: * Specifications and Information contained in this documentation are furnished for information use only, and are subject to change at any time without notice, and should not be construed as a commitment by manufacturer. Environmental Protection Announcement Do not dispose this electronic device into the trash while discarding. To minimize pollution and ensure environment protection of mother earth, please recycle. ii TABLE OF CONTENT USER’S NOTICE .................................................................................................................................. iv MANUAL REVISION INFORMATION ............................................................................................ iv ITEM CHECKLIST.............................................................................................................................. iv CHAPTER 1 INTRODUCTION OF THE MOTHERBOARD 1-1 FEATURE OF MOTHERBOARD..................................................................................... 1 1-2 SPECIFICATION.................................................................................................................. 2 1-3 LAYOUT DIAGRAM ........................................................................................................... 3 CHAPTER 2 JUMPER SETTING, CONNECTORS AND HEADERS 2-1 JUMPER SETTING ..............................................................................................................6
    [Show full text]
  • Intel Motherboard Hardware V1.0
    Intel Motherboard Hardware v1.0 Author: Harry Li, Engineer 1 Scope This document defines the technical specifications for the Intel motherboard used in Open Compute Project servers. 2 Contents 1 Scope ......................................................................................................................................... 2 2 Contents .................................................................................................................................... 2 3 Overview ................................................................................................................................... 5 3.1 License ............................................................................................................................. 5 4 Motherboard Features .............................................................................................................. 6 4.1 Block Diagram .................................................................................................................. 6 4.2 CPU and Memory ............................................................................................................. 6 4.3 Northbridge ..................................................................................................................... 7 4.4 Southbridge/Peripheral Bus Controller ........................................................................... 7 4.5 Network Interfaces .........................................................................................................
    [Show full text]
  • "Design Rules, Volume 2: How Technology Shapes Organizations
    Design Rules, Volume 2: How Technology Shapes Organizations Chapter 17 The Wintel Standards-based Platform Carliss Y. Baldwin Working Paper 20-055 Design Rules, Volume 2: How Technology Shapes Organizations Chapter 17 The Wintel Standards-based Platform Carliss Y. Baldwin Harvard Business School Working Paper 20-055 Copyright © 2019 by Carliss Y. Baldwin Working papers are in draft form. This working paper is distributed for purposes of comment and discussion only. It may not be reproduced without permission of the copyright holder. Copies of working papers are available from the author. Funding for this research was provided in part by Harvard Business School. © Carliss Y. Baldwin Comments welcome. Please do not circulate or quote. Design Rules, Volume 2: How Technology Shapes Organizations Chapter 17 The Wintel Standards-based Platform By Carliss Y. Baldwin Note to Readers: This is a draft of Chapter 17 of Design Rules, Volume 2: How Technology Shapes Organizations. It builds on prior chapters, but I believe it is possible to read this chapter on a stand-alone basis. The chapter may be cited as: Baldwin, C. Y. (2019) “The Wintel Standards-based Platform,” HBS Working Paper (November 2019). I would be most grateful for your comments on any aspect of this chapter! Thank you in advance, Carliss. Abstract The purpose of this chapter is to use the theory of bottlenecks laid out in previous chapters to better understand the dynamics of an open standards-based platform. I describe how the Wintel platform evolved from 1990 through 2000 under joint sponsorship of Intel and Microsoft. I first describe a series of technical bottlenecks that arose in the early 1990s concerning the “bus architecture” of IBM-compatible PCs.
    [Show full text]