Southampton: Oct 99Asynchronous Circuit Compilation- 1 AMULET3-H n Asynchronous macrocell ARM compatible processor core Full custom RAM Compiled ROM Balsa.

Slides:



Advertisements
Similar presentations
Bus Specification Embedded Systems Design and Implementation Witawas Srisa-an.
Advertisements

Chapter 7: System Buses Dr Mohamed Menacer Taibah University
1  1998 Morgan Kaufmann Publishers Interfacing Processors and Peripherals.
Southampton: Oct 99Asynchronous Circuit Compilation- 1 Asynchronous Circuit Compilation Dr. Doug Edwards
1/1/ / faculty of Electrical Engineering eindhoven university of technology Processor support devices Part 1:Interrupts and shared memory dr.ir. A.C. Verschueren.
Southampton: Oct 99AMULET3i - 1 AMULET3i - asynchronous SoC Steve Furber - n Agenda: AMULET3i Design tools Future problems.
9/20/6Lecture 3 - Instruction Set - Al1 The Hardware Interface.
RLH - Spring 1998ECE 611 Hardware - 1 Basic Microprocessor Hardware ECE 611 Microprocessor Systems Dr. Roger L. Haggard, Associate Professor Department.
Processor System Architecture
11-May-04 Qianyi Zhang School of Computer Science, University of Birmingham (Supervisor: Dr Georgios Theodoropoulos) A Distributed Colouring Algorithm.
Interfacing Processors and Peripherals Andreas Klappenecker CPSC321 Computer Architecture.
Introduction An interrupt is an event which informs the CPU that its service (action) is needed. Sources of interrupts: internal fault (e.g.. divide by.
University College Cork IRELAND Hardware Concepts An understanding of computer hardware is a vital prerequisite for the study of operating systems.
TECH CH03 System Buses Computer Components Computer Function
9/20/6Lecture 3 - Instruction Set - Al Hardware interface (part 2)
Prardiva Mangilipally
1 Sequential Circuits Registers and Counters. 2 Master Slave Flip Flops.
Module I Overview of Computer Architecture and Organization.
Hardware Overview Net+ARM – Well Suited for Embedded Ethernet
Lecture 12 Today’s topics –CPU basics Registers ALU Control Unit –The bus –Clocks –Input/output subsystem 1.
CS-334: Computer Architecture
Computer Architecture Lecture 08 Fasih ur Rehman.
Spring EE 437 Lillevik 437s06-l2 University of Portland School of Engineering Advanced Computer Architecture Lecture 2 NSD with MUX and ROM Class.
CHAPTER 5 I/O PRINCIPLE Understand the principles of System Bus
CPU BASICS, THE BUS, CLOCKS, I/O SUBSYSTEM Philip Chan.
ECE 493T9 Real Time Embedded System Tutorial Set 3 June 10, Spring 2008.
Samsung ARM S3C4510B Product overview System manager
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
Top Level View of Computer Function and Interconnection.
Computer Architecture Lecture10: Input/output devices Piotr Bilski.
Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 2.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
SEQUENTIAL CIRCUITS Component Design and Use. Register with Parallel Load  Register: Group of Flip-Flops  Ex: D Flip-Flops  Holds a Word of Data 
COMPUTER ORGANIZATIONS CSNB123. COMPUTER ORGANIZATIONS CSNB123 Expected Course Outcome #Course OutcomeCoverage 1Explain the concepts that underlie modern.
MBG 1 CIS501, Fall 99 Lecture 18: Input/Output (I/O): Buses and Peripherals Michael B. Greenwald Computer Architecture CIS 501 Fall 1999.
EEE440 Computer Architecture
Embedded Network Interface (ENI). What is ENI? Embedded Network Interface Originally called DPO (Digital Product Option) card Printer without network.
Tools - LogiBLOX - Chapter 5 slide 1 FPGA Tools Course The LogiBLOX GUI and the Core Generator LogiBLOX L BX.
Computer Organization CDA 3103 Dr. Hassan Foroosh Dept. of Computer Science UCF © Copyright Hassan Foroosh 2002.
Host Port Interface Expansion Bus Chapter 16 C6000 Integration Workshop Copyright © 2005 Texas Instruments. All rights reserved. T TO Technical Training.
Chapter 3 System Buses.  Hardwired systems are inflexible  General purpose hardware can do different tasks, given correct control signals  Instead.
Chapter 3. Advanced Hardware Fundamentals The various parts you will commonly find in an embedded-system circuit 발표일시 : 발표자 : 채화영.
1394 H/W and OHCI Gi-Hoon Jung. 2002/01/162 Agenda Overview of the VITANA board OHCILynx PCI-based Host Controller Overview of the OHCI Spec.
System on a Programmable Chip (System on a Reprogrammable Chip)
Computer Architecture. Top level of Computer A top level of computer consists of CPU, memory, an I/O components, with one or more modules of each type.
DIRECT MEMORY ACCESS and Computer Buses
Department of Computer Science and Engineering
Class Exercise 1B.
Low-power Digital Signal Processing for Mobile Phone chipsets
Diagram of microprocessor interface with IO devices
I/O Memory Interface Topics:
Overview Peripheral Devices Input-Output Interface
Lecture 3 - Instruction Set - Al
Historical/Functional Development of CPU-Devices Interface
Components of a CPU AS Computing - F451.
Levels in Processor Design
William Stallings Computer Organization and Architecture 7th Edition
Preliminary design of the behavior level model of the chip
William Stallings Computer Organization and Architecture
Advanced Computer Architecture Lecture 3
Presentation transcript:

Southampton: Oct 99Asynchronous Circuit Compilation- 1 AMULET3-H n Asynchronous macrocell ARM compatible processor core Full custom RAM Compiled ROM Balsa compiled DMA controller Test I/F, synchronous and off-chip bus bridges n Synchronous peripherals Designed by commercial partner...

Southampton: Oct 99Asynchronous Circuit Compilation- 2 AMULET3 System CPU / RAM ROMDMAC Periph1 Sync bridge MARBLESOCB

Southampton: Oct 99Asynchronous Circuit Compilation- 3 DMA Local RAM Access CPU / RAM ROMDMAC Periph1 Sync bridge MARBLESOCB

Southampton: Oct 99Asynchronous Circuit Compilation- 4 DMA Peripheral Accesses CPU / RAM ROMDMAC Periph1 Sync bridge MARBLESOCB DMA requests

Southampton: Oct 99Asynchronous Circuit Compilation- 5 Requirements / Specification n 16 clients, 32 channels n 3 channel types - complicated register structure n Programmable client  channel 1  many mapping n Support synchronous requests n Transfers mostly between synchronous clients

Southampton: Oct 99Asynchronous Circuit Compilation- 6 Controller Structure

Southampton: Oct 99Asynchronous Circuit Compilation- 7 TI  mem RB Regs RW WR +RW+ RW client req Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) Transfer engine Operation Request arrives

Southampton: Oct 99Asynchronous Circuit Compilation- 8 TI  mem RB Regs RW WR +RW+ RW client req Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) Transfer engine Operation TE signals RB

Southampton: Oct 99Asynchronous Circuit Compilation- 9 TI  mem RB Regs RW WR +RW+ RW client req Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) Transfer engine Operation RB returns address/count

Southampton: Oct 99Asynchronous Circuit Compilation- 10 TI  mem RB Regs RW WR +RW+ RW client req Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) Transfer engine Operation TE performs transfer

Southampton: Oct 99Asynchronous Circuit Compilation- 11 TI  mem RB Regs RW WR +RW+ RW client req Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) Transfer engine Operation Addresses are incremented

Southampton: Oct 99Asynchronous Circuit Compilation- 12 TI  mem RB Regs RW WR +RW+ RW client req Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) Transfer engine Operation TE returns count/addr to RB RB resets request signals

Southampton: Oct 99Asynchronous Circuit Compilation- 13 Two Controller Descriptions n Sequential (previous slides) Very simple control flow Requires two passes through register bank Slow!, Only memory decoupling helps n Parallel (next slides) Decouple TE actions from memory R/W with a new unit: Transfer Interface Interrupt the register bank on end of transfer

Southampton: Oct 99Asynchronous Circuit Compilation- 14 Controller Structure

Southampton: Oct 99Asynchronous Circuit Compilation- 15 “Parallel” Design

Southampton: Oct 99Asynchronous Circuit Compilation- 16 Operation Request arrives Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) TE Transfer interface Addr end of run TI  mem RB Regs R R R client req +W W +W RW

Southampton: Oct 99Asynchronous Circuit Compilation- 17 Operation TE signals RB Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) TE Transfer interface Addr end of run TI  mem RB Regs R R R client req +W W +W RW

Southampton: Oct 99Asynchronous Circuit Compilation- 18 Operation RB responds || incrementing counter Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) TE Transfer interface Addr end of run TI  mem RB Regs R R R client req +W W +W RW Increment in reg bank

Southampton: Oct 99Asynchronous Circuit Compilation- 19 Operation TE sends addr to TI || RB reg writes Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) TE Transfer interface Addr end of run TI  mem RB Regs R R R client req +W W +W RW

Southampton: Oct 99Asynchronous Circuit Compilation- 20 Operation TI performs transfer Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) TE Transfer interface Addr end of run TI  mem RB Regs R R R client req +W W +W RW

Southampton: Oct 99Asynchronous Circuit Compilation- 21 Operation TI signals RB if Last transfer completed Target (Slave) DMA registers Transfer engine DMA_rq[n] interface Arbitration async control Address Data AddressData synchronous island self timed region Channel DMA_irq/DMA_fiq DMA controller Initiator (Master) interface AddressData SOCB clock Client Requests request reset Requests DMA SPI (sync control) TE Transfer interface Addr end of run TI  mem RB Regs R R R client req +W W +W RW

Southampton: Oct 99Asynchronous Circuit Compilation- 22 The Design n 919 lines of Balsa describing register bank control, TE and TI. n Custom register banks and Synchronous Peripheral Interface n Miscellaneous glue standard cells Register bank controllers MARBLE interfaces n Compass Design Automation CAD

Southampton: Oct 99Asynchronous Circuit Compilation- 23 Design Partitioning Marble BUS: outside of DMA controller

Southampton: Oct 99Asynchronous Circuit Compilation- 24 Design Partitioning Balsa synthesised standard cells

Southampton: Oct 99Asynchronous Circuit Compilation- 25 Design Partitioning Custom “regular” layout

Southampton: Oct 99Asynchronous Circuit Compilation- 26 Design Partitioning Hand designed standard cells

Southampton: Oct 99Asynchronous Circuit Compilation- 27 DMA Controller Floor-Plan

Southampton: Oct 99Asynchronous Circuit Compilation- 28 Implementation Technology n 0.35  m, 3LM CMOS n Standard cells from ARM Ltd. n Locally designed complex gates and asynchronous elements/gates. n Automated standard cell P&R n Only “essential” and simple gate level optimisation (by hand)

Southampton: Oct 99Asynchronous Circuit Compilation- 29 Simulation n LARD behavioural modelling n EPIC TimeMill transistor level simulation on schematic on cap. Extracted netlist n TimeMill is calibrated using SPICE, claims to be within a few % of SPICE n Results measured for run of 16 mem To mem transfers.

Southampton: Oct 99Asynchronous Circuit Compilation- 30 Comparing Performance