HM-ES-th1 Les 4 Hardware/Software Codesign with SystemC.

Slides:



Advertisements
Verwante presentaties
Vincent Poté Nelis Vandermeiren Simen Akkermans Kevin De Neef
Advertisements

Hoe werkt een rekenmachine?
Data Acquisition & Control System
PROS2 Les 2 Programmeren en Software Engineering 2.
HM-ES-th1 Les 9 Hardware/Software Codesign with SystemC.
 De Robot  Het Programma  Film By Martijn Hazenboom.
Figuur 5.1 Organisatieschema Figuur 5.2 Steile en platte organisatie.
>>0 >>1 >> 2 >> 3 >> 4 >> Adobe Premiere CS4 – Edius 5.5 – Adobe Elements 7.
Welkom !!!.
Kennismaking met de computerconfiguratie
Verkeerslicht - Nederlands principe: groen-oranje-rood-groen
Ronde (Sport & Spel) Quiz Night !
Inleiding Internetwerking Telecommunicatie Information management 2 Groep T Leuven – Information department 2/7 Doelstellingen De student.
Auteursomgeving voor Digitale Componenten
1 Hoe werkt een computer nu precies? Ben Bruidegom & Wouter Koolen-Wijkstra AMSTEL Instituut Universiteit van Amsterdam Met steun van stichting Edict.
Geïntegreerde proef de Télégeleide auto Ben Roose.
F. Rubben NI Lookout 1 06/RIS/05 - NI Lookout VTI Brugge F. Rubben, ing.
HM-ES-th1 Les 1 Hardware/Software Codesign with SystemC.

VHDL Peter Slaets KHLim Functies en procedures Functies –type conversie functies »bit vector to integer en omgekeerd –verkorte componenten met maar 1 output.
1 Prof. Dr. Martine De Cock academiejaar Lambdarekenen.
5JJ20: Computerarchitectuur 2M200: Inleiding Computersystemen
door Liesbeth de Ruiter & Aligonda Wijnia
1 Ben Bruidegom AMSTEL-instituut Universiteit van Amsterdam Reehorstconferentie 2007 NLT-module Digitale Techniek Ontwerpen van digitale schakelingen met.
1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.
1Ben Bruidegom 1 Hoe werkt een “loopje” nu precies? Recapitulatie rekenmachines week 1 Van rekenmachine naar rekenmachine met “loopjes”
1Ben Bruidegom A Harvard Machine Calculator Calculator  Computer.
Auteursomgeving voor Digitale Componenten
1 Woudschotenconferentie 2006 Ben Bruidegom AMSTEL-instituut Universiteit van Amsterdam NLT-module Digitale Techniek Ontwerpen van digitale schakelingen.
Complexe schakelingen
Les 12b : MODULE 1 Snedekrachten (4)
Les 12b : MODULE 1 Snedekrachten (4)
OHT 3.1 De Pelsmacker, Geuens & Van den Bergh, Marketingcommunicatie, vierde editie © Pearson Education 2011 Hoe marketingcommunicatie werkt In dit hoofdstuk.
Een USB 2.0 oscilloscoop Bossuyt Frederick De Bock Steven
Algoritmen en Datastructuren (ALDAT) EVMINX4 Dagdeel 2.
HM-ES-th1 Les 3 Hardware/Software Codesign with SystemC.
C++ handboek : C++ Leen Ameraal 6e druk academic service.
Inleiding programmeren in C++ Life Science & Technology 2 februari Universiteit Leiden.
Leren met effect “Taaltuin”
Sparen, Kapitaalaccumulatie, en Productie - De Lange Termijn
Werken aan Intergenerationele Samenwerking en Expertise.
Title VHDL Introductie FirstName LastName – Activity / Group.
De FFT spectrumanalyzer
Les 9 Gelijkstroomschakelingen
Hoe werkt een rekenmachine?
Talstelsels, rekenen en rekenschakelingen
Datapath & Contol 9.30 Introductie: datatransport via een bus
1Ben Bruidegom 1 Micro controllers introduction. 2Ben Bruidegom 2 Areas of use & Numbers of machines You might have 1 or 2 Pentium class chips at home.
Talstelsels, rekenen en rekenschakelingen
Flight 68K Temperatuur geregelde ventilator
Best8-1 Les 8: Input/Output [Lat: datarum initus exitusque]
2PROJ5 – PIC assembler Hogeschool Utrecht / Institute for Computer, Communication and Media Technology 1 Les 6 - onderwerpen seriele interface (UART -
Economische impact sluiting Ford Genk Ludo Peeters en Mark Vancauteren (Universiteit Hasselt)
Twee spiegels maken een hoek van 60 °
Hoofdstuk 3 Assenstelsel.
ZijActief Koningslust 10 jaar Truusje Trap
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 2: IDaSS.
MICROCONTROLLERS.
ECHT ONGELOOFLIJK. Lees alle getallen. langzaam en rij voor rij
AS1200 moederbord. AS1200 Structuur RELREL Micro- controller P W F I / O I²C -Bus (seriëel) EEPROMDP1 B1 B2 DP2 B3 B4 AS1225 B1 B2 AS1225 B3 B4 AS1220.
USABILITY MYTHBUSTERS BASTIAAN KLOOSTER & PETER AKERBOOM CONGRES WEBREDACTIE 2011.
De financiële functie: Integrale bedrijfsanalyse©
Oefeningen Workshop RIE Gemeenten
1 Zie ook identiteit.pdf willen denkenvoelen 5 Zie ook identiteit.pdf.
HM-ES-th1 Les 12 Hardware/Software Codesign with SystemC.
Racedetectie in Parallelle Programma’s door Gecontroleerde Heruitvoering Michiel Ronsse Promotoren: Prof. K. De Bosschere Prof. J. Van Campenhout Vakgroep.
Overzicht Beeldverbetering 1 met histogrammen
Donderdag 2 april 2015 Roosterwijzigingen Corvee rooster week 44 (1 nov. t/m nov.): Grote Beer en Melkweg 10.30, en uur: 3AA Melkweg en Grote.
Profibus Automation & Drives.
Binaire getallen 1. binair → decimaal 2. decimaal → binair.
Transcript van de presentatie:

HM-ES-th1 Les 4 Hardware/Software Codesign with SystemC

SystemC Hiërarchie  Een module kan (sub)modules bevatten 18 in port out port module submodule channel submodule

Verbindingen tussen modules  Verbindingen tussen hiërarchische niveaus:  Input van module (rechtstreeks) verbonden met input van submodule.  Output van submodule (rechtstreeks) verbonden met output van module.  Verbindingen binnen een hierarchische niveau:  Output van een module (via een channel) verbonden met de input van een andere module (op hetzelfde niveau). 19

2 bit full adder  Schema (opgebouwd uit twee 1 bit full adders). 20 A0 S0 Adder2Bits carry adder0 AB Cin SCout adder1 AB Cin SCout B0 Cin A1 B1 S1Cout

2 bit full adder SC_MODULE(Adder2Bits) { sc_in A0, B0, A1, B1, Cin; sc_out S0, S1, Cout; SC_CTOR(Adder2Bits): adder0("adder0"), adder1("adder1") { adder0.A(A0); adder0.B(B0); adder0.Cin(Cin); adder0.S(S0); adder0.Cout(carry); adder1.Cin(carry); adder1.A(A1); adder1.B(B1); adder1.S(S1); adder1.Cout(Cout); } private: Adder adder0, adder1; sc_signal carry; }; 21

2 bit full adder (alternatief) SC_MODULE(Adder2Bits) { sc_in A0, B0, A1, B1, Cin; sc_out S0, S1, Cout; SC_CTOR(Adder2Bits) { SC_METHOD(add); sensitive << A0 << B0 << A1 << B1 << Cin; } private: void add() { sc_uint a = 0, b = 0, c = 0; a[1] = A1.read().to_bool(); a[0] = A0.read().to_bool(); b[1] = B1.read().to_bool(); b[0] = B0.read().to_bool(); c[0] = Cin.read().to_bool(); sc_uint s = a + b + c; S0.write(sc_logic(s[0].to_bool())); S1.write(sc_logic(s[1].to_bool())); Cout.write(sc_logic(s[2].to_bool())); } }; 22

 De 2 bit full adder opgebouwd met twee 1 bit full adders noemen we een structural model.  De 2 bit full adder waarvan het gedrag wordt beschreven zonder gebruik te maken van submodules noemen we een behavioral model. 23

Modules  Modules are the basic building blocks for partitioning a design  A module is a structural entity, which can contain processes, ports, channels, member functions not registered as processes and instances of other modules  A module is the foundation of structural hierarchy  Modules allow designers to hide internal data representation and algorithms from other modules  Designers are forced to use public interfaces to other modules, thus making the entire system easier to change and maintain  reusability = lower design time 24

Processes  Processes are small pieces of code that run concurrently with other processes.  Functionality is described in processes.  Processes must be contained within a module.  They are registered as processes with the SystemC kernel, using a process declaration in the module constructor.  Processes accept no arguments and produce no output 25

SystemC in UML 26

Fixed point getallen  Een fixed point getal heeft een bepaald aantal bits voor de decimale punt en een bepaald aantal bits na de decimale punt.  Fixed point getallen kunnen in een integer worden opgeslagen. De programmeur moet dan wel zelf onthouden waar de decimale punt staat.  Rekenen met fixed point getallen:  Optellen en aftrekken  niets bijzonders.  Vermenigvuldigen  resultaat naar rechts schuiven zodat decimale punt weer goed staat.  Delen  resultaat naar links schuiven zodat decimale punt weer goed staat. 27