Presentation is loading. Please wait.

Presentation is loading. Please wait.

Languages for HW and SW Development Ondrej Cevan.

Similar presentations


Presentation on theme: "Languages for HW and SW Development Ondrej Cevan."— Presentation transcript:

1 Languages for HW and SW Development Ondrej Cevan

2 04.06.2007Languages for HW and SW development2 Content HW vs. SW development purpose HDL vs. SW programming language merging HDL and SW prog. language conclusion

3 04.06.2007Languages for HW and SW development3 What We Already Know HW and SW design flow show differences  SW design tools: many of them free available  HW design tools: mostly commercial and expensive differences between HW and SW verification & debugging  HW: more simulation activities, extreme costs of mistakes (any error means spinning a new piece of silicon)  SW: “Just keep debugging till the damn thing finally works.” (no obvious costs in pre-release phase)

4 04.06.2007Languages for HW and SW development4 What we Need to Develop? (The Origin of Differences) HW  code translatable into electronic logic components (gate arrays, complex control circuits)  finally -> layout for mask -> transfer to silicon SW  code translatable into machine language  finally -> instructions in machine language loaded into the memory of the machine (computer)

5 04.06.2007Languages for HW and SW development5 How To Achieve It HW  hardware description languages (HDL) VHDL, Verilog, Abel,...  components mapped to the target technology in the compilation step thus HDL code can be technology independent  after PPR -> mask building or download to (re)configurable HW SW  programming languages high-level (C++, Java,...) low-level (C, Assembler,...)  compiler translates the source language into specific machine language thus source code can be machine independent

6 04.06.2007Languages for HW and SW development6 Concurrency HDL  can model multiple parallel (independent) processes (flip-flops, adders)  order of execution is solely specified by events occurring on signals that the assignment statements are sensitive to Prog.L.  inherently procedural (single-threaded)  limited support to handle concurrency  BUT with the advent of multicore processors concurrency is becoming important

7 04.06.2007Languages for HW and SW development7 HDL Format and Syntax Boolean Description Using VHDL  The keyword ENTITY defines the interface of the circuit block, in this case: and_gate  The keyword PORT defines the inputs and outputs.  The keyword ARCHITECTURE describes the operation inside the block.  The BEGIN and END contain a description of the operation The keyword CONFIGURATION maps architecture with entity operation processed whenever a signal change occurs on “a” or “b” input pin

8 04.06.2007Languages for HW and SW development8 Prog.L. Format and Syntax function definition in C  function contains declarations and statements  input and output (return) variables defined in the function declaration  operation defined in the body of the function C: char and(char a, char b){ char c; c = a & b; return c; } function processed whenever called

9 04.06.2007Languages for HW and SW development9 HDL vs. Prog.L.

10 04.06.2007Languages for HW and SW development10 System Level Design language for System Level Design must be able to describe the whole system, consisting of SW and HW support for concurrency, synchronization, exception handling, concept of time, complex functionality support for simulation and verification at every design level, support for ordinary Prog.L. syntax (C++) HDL & Prog.L. merge into System Description Language => SystemC, SystemVerilog SLD enables to develop SW for specific HW not produced yet

11 04.06.2007Languages for HW and SW development11 Conclusion basic differences in concurrency support and the purpose (el. circuit vs. machine code) HW developers should have deeper understanding of how the code can be translated into HW with growing complexity of the computation systems the demand for high-level languages for SW and HW development grows too modern tools are very effective in translating high-level abstractions into low-levels (levels closer to silicon) trend: merging HW and SW development process => SystemC (more in the following presentation)

12 04.06.2007Languages for HW and SW development12 Thank You!

13 04.06.2007Languages for HW and SW development13 List of Used Sources http://www.embedded.com/story/OEG20011009S0072 Einführung in die Technische Informatik; Gerhard H. Schildt, Alexander Redlein, Daniela Kahn Hardware Modeling VO; Martin Delvai www.wikipedia.org


Download ppt "Languages for HW and SW Development Ondrej Cevan."

Similar presentations


Ads by Google