DOC PREVIEW
MIT 6 375 - Study Guide

This preview shows page 1-2-3-26-27-28 out of 28 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 28 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Decoupled Architectures and Transaction-Level DesignToday’s Difficult Design ProblemFirst Complication: Output StallStall Fan-Out ExampleLoops Prevent Arbitrary Logic ResizingSecond Complication: Bubbles on InputLogic to Squeeze BubblesDecoupled Design DisciplineHardware Design Abstraction LevelsApplication to RTL in One Step?Unit-Transaction Level Design Discipline6.375 UTL DisciplineUTL OverviewUnit Architectural StateQueuesTransactionsSchedulerUTL Example: IP LookupRefining IP Lookup to RTLUTL & Architectural-Level VerificationUTL Helps Physical DesignDesign Template for Unit MicroarchitectureSkid BufferingImplementing Communication QueuesEnd-End Credit-Based Flow ControlDistributed Flow ControlBusesOn-Chip Network6.375 – Spring 2007, L15-Slide-1Decoupled Architectures andTransaction-Level Design6.375 – Spring 2007, L15-Slide-2Today’s Difficult Design Problem(For today’s lecture, we’ll assume clock distribution is not an issue)The humble shift register6.375 – Spring 2007, L15-Slide-3First Complication: Output StallShift register should only move data to right if output ready to accept next itemReadyWhat complication does this introduce?6.375 – Spring 2007, L15-Slide-4Stall Fan-Out Example200 bits per shift register stage, 16 stages3200 flip-flopsHow many FO4 delays to buffer up ready signal?ReadyEnableThis doesn’t include any penalty for driving enable signal wiring!6.375 – Spring 2007, L15-Slide-5Loops Prevent Arbitrary Logic ResizingWe could increase size of gates in ready logic block to reduce fan out required to drive ready signal to flop enables…BUT, ReadyReady LogicShift Register ModuleReceiving Module6.375 – Spring 2007, L15-Slide-6Second Complication: Bubbles on InputSender doesn’t have valid data every clock cycle, empty “bubbles” inserted into pipelineReadyWould like to “squeeze” bubbles out of pipelineValidStage 1Stage 2Stage 3Stage 4Time~Ready~Valid6.375 – Spring 2007, L15-Slide-7Logic to Squeeze BubblesCan move one stage to right if Ready asserted, or there is any bubble in stages to right of current stageReady?ValidEnable?Valid?Fan-in of number of valid signals grows with number of pipeline stagesFan-out of each stage’s valid signal also grows with number of pipeline stagesResults in slow combinational paths as number of pipeline stages grows6.375 – Spring 2007, L15-Slide-8Decoupled Design DisciplineThe shift register example is a simple abstraction that illustrates the control complexity problems of any large synchronous pipeline–Usually, there are even more complex interactions between stagesCombinational LogicCLKCombinational LogicTo avoid these problems (and many others), designers will use a decoupled design discipline, where moderate size synchronous units (~10-100K gates) are connected by decoupling FIFOs or channels6.375 – Spring 2007, L15-Slide-9Hardware Design Abstraction LevelsAlgorithmCircuitsApplicationGuarded Atomic Actions (Bluespec)Register-Transfer Level (Verilog RTL)DevicesUnit-Transaction Level (UTL) ModelGatesPhysicsToday’s Lecture6.375 – Spring 2007, L15-Slide-10Application to RTL in One Step?Modern hardware systems have complex functionality (graphics chips, video encoders, wireless communication channels), but sometimes designers try to map directly to an RTL cycle-level microarchitecture in one stepRequires detailed cycle-level design of each sub-unit–Significant design effort required before clear if design will meet goalsInteractions between units becomes unclear if arbitrary circuit connections allowed between units, with possible cycle-level timing dependencies–Increases complexity of unit specificationsRemoves degrees of freedom for unit designers–Reduces possible space for architecture explorationDifficult to document intended operation, therefore difficult to verify6.375 – Spring 2007, L15-Slide-11Unit-Transaction Level Design DisciplineModel design as messages flowing through FIFO buffers between units containing architectural stateEach unit can independently perform an operation, or transaction, that may consume messages, update local state, and send further messages Transaction and/or communication might take many cycles (i.e., not necessarily a single Bluespec rule)–Have to design RTL of unit microarchitecture during design refinementUnit 1Arch. StateArch. StateUnit 2Unit 3Arch. StateShared Memory Unit6.375 – Spring 2007, L15-Slide-126.375 UTL DisciplineVarious forms of transaction-level model are becoming increasingly used in commercial designsUTL (Unit-Transaction Level) models are the variant we’ll use in 6.375UTL forces a discipline on top-level design structure that will result in clean hardware designs that are easier to document and verify, and which should lead to better physical designs–A discipline restricts hardware designs, with the goal of avoiding bad choicesUTL specs can be easily implemented in C/C++/Java/SystemC/Bluespec EsePro to give a golden model for design verificationYou’re required to give an initial UTL description (in English text) of your project design by April 6 project milestone6.375 – Spring 2007, L15-Slide-13UTL OverviewUnit comprises:Architectural state (registers + RAMs)Input queues and output queues connected to other unitsTransactions (atomic operations on state and queues)Scheduler (combinational function to pick next transaction to run)TransactionsSchedulerInput queuesOutput queuesArch. StateUnit6.375 – Spring 2007, L15-Slide-14Unit Architectural StateArchitectural state is any state that is visible to an external agent–i.e, architectural state can be observed by sending strings of packets into input queues and looking at values returned at outputs.High-level specification of a unit only refers to architectural stateDetailed implementation of a unit may have additional microarchitectural state that is not visible externally–Intra-transaction sequencing logic–Pipeline registers–Caches/buffersArch. State6.375 – Spring 2007, L15-Slide-15QueuesQueues expose communication latency and decouple units’ executionQueues are point-to-point channels only–No fanout, a unit must replicate messages on multiple queues–No buses in a UTL designTransactions can only pop head of input queues and push at most one element onto each output queue–Avoids exposing size of buffers in queues–Also avoids synchronization


View Full Document

MIT 6 375 - Study Guide

Documents in this Course
IP Lookup

IP Lookup

15 pages

Verilog 1

Verilog 1

19 pages

Verilog 2

Verilog 2

23 pages

Encoding

Encoding

21 pages

Quiz

Quiz

10 pages

IP Lookup

IP Lookup

30 pages

Load more
Download Study Guide
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Study Guide and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Study Guide 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?