DOC PREVIEW
MIT 6 111 - Multi-Core ßeta Computer

This preview shows page 1-2-3-4 out of 13 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 13 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 13 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 13 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 13 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 13 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

MultiMulti--Core Core ßßetaetaComputerComputerChristopher Celio & Matt LongChristopher Celio & Matt Long6.111 Spring 20076.111 Spring 2007Project GoalsProject GoalsBuilding a functional multiBuilding a functional multi--core computer core computer around the Beta processor (think 6.004 Labs on around the Beta processor (think 6.004 Labs on steroids)steroids)Visually demonstrate the benefits of multiple Visually demonstrate the benefits of multiple cores with cores with ““The Game of LifeThe Game of Life””Managing access to memory amongst many Beta Managing access to memory amongst many Beta processors via a Memory Manager and possibly processors via a Memory Manager and possibly data caches.data caches.The Game of LifeThe Game of LifeA A ‘‘zerozero--playerplayer’’game, user sets initial game, user sets initial state, then observes cellular evolutionstate, then observes cellular evolutionFor each generation, a cell is either For each generation, a cell is either live live or or deaddeadbased on its number of direct based on its number of direct neighbors in the previous generationneighbors in the previous generationCells evolve indefinitely on an infinite Cells evolve indefinitely on an infinite (in our case 240 x 240) grid(in our case 240 x 240) gridImage courtesy of WikipediaSystem ArchitectureThe 2The 2--Stage RISC Harvard Beta ProcessorStage RISC Harvard Beta ProcessorThe OS & SoftwareThe OS & SoftwareUsing the 6.004 mini OS as a Using the 6.004 mini OS as a starting pointstarting pointSoftware written in Assembly Software written in Assembly and compiled by BSIMand compiled by BSIMPython script creates software.v Python script creates software.v file, which instantiates BRAM file, which instantiates BRAM and initializes the memory to and initializes the memory to the Beta machine codethe Beta machine codeHow will the multiHow will the multi--cores cores communicate? communicate? ShortShort--answer: softwareanswer: softwareEach CPU knows its ID Each CPU knows its ID and total_CPU_Countand total_CPU_CountGame of Life:Game of Life:4 steps per round4 steps per round--Compute all cells (all Compute all cells (all cpuscpusread static image in Memory)read static image in Memory)--Wait (for all to finish)Wait (for all to finish)--Update all cellsUpdate all cells(refresh the static image)(refresh the static image)--WaitWaitImage courtesy of WikipediaDisplay ControllerDisplay ControllerTwo Display ModesTwo Display ModesConsole Mode:Console Mode:Textual: 80 x 40 character display with promptTextual: 80 x 40 character display with promptInteract with the Operating SystemInteract with the Operating SystemLaunch The Game of LifeLaunch The Game of LifeGame Mode:Game Mode:The Game of Life The Game of Life cellular gridcellular gridSystem performance statisticsSystem performance statisticsgenerations/secondgenerations/secondinstructions/secondinstructions/secondprocessor usageprocessor usageVGA Controller ModuleVGA Controller ModuleDriven by a clock with twice the frequency of Driven by a clock with twice the frequency of the VGA pixel clockthe VGA pixel clockAllows memory access and data processing to occur Allows memory access and data processing to occur within each cycle of the pixel clockwithin each cycle of the pixel clockReads display data from character and/or game Reads display data from character and/or game state state RAMsRAMs128 Character ROM128 Character ROMConclusionConclusionQuestions?Questions?Why The Game of Life?Why The Game of Life?Simple, yet computationally intenseSimple, yet computationally intense: Continually : Continually calculate the number of neighbors for each of 50,000+ cells calculate the number of neighbors for each of 50,000+ cells to determine next generationto determine next generationWell suited for a multiWell suited for a multi--core systemcore system: Time needed to : Time needed to compute each generation decreases linearly as more compute each generation decreases linearly as more processors are addedprocessors are addedFun and interesting way to visually observe the benefits of Fun and interesting way to visually observe the benefits of multiple processorsmultiple


View Full Document

MIT 6 111 - Multi-Core ßeta Computer

Documents in this Course
Verilog

Verilog

21 pages

Video

Video

28 pages

Bass Hero

Bass Hero

17 pages

Deep 3D

Deep 3D

12 pages

SERPENT

SERPENT

8 pages

Vertex

Vertex

92 pages

Vertex

Vertex

4 pages

Snapshot

Snapshot

15 pages

Memories

Memories

42 pages

Deep3D

Deep3D

60 pages

Design

Design

2 pages

Frogger

Frogger

11 pages

SkiFree

SkiFree

81 pages

Vertex

Vertex

10 pages

EXPRESS

EXPRESS

2 pages

Labyrinth

Labyrinth

81 pages

Load more
Download Multi-Core ßeta Computer
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 Multi-Core ßeta Computer 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 Multi-Core ßeta Computer 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?