Difference between revisions of "PLD Workshop 18 06 2013"

From Hackerspace.gr
Jump to: navigation, search
 
(3 intermediate revisions by the same user not shown)
Line 13: Line 13:
 
|country=Greece
 
|country=Greece
 
}}
 
}}
 +
 
''we'll actually split into teams and all, so we'll really need the laptops this time around''
 
''we'll actually split into teams and all, so we'll really need the laptops this time around''
  
 +
''slides are in [https://github.com/pld-lessons/slides/raw/master/pld-1.4-cpu-intro.pdf github]''
  
 
==== Aftermath ====
 
==== Aftermath ====
 
* Implemented basic cpu in C/C++
 
* Implemented basic cpu in C/C++
 
+
* code in https://github.com/pld-lessons/simple_cpu
==== For study ====
+
* Implement an assembler that accepts assembly in a nice, text format and outputs C code for it
+
* Modify tiny.cpp to read external binary files
+
* modify the assembler to generate binary files
+
 
+
Example assembly format
+
 
+
    //this is a commend and is ignored
+
    mov r0,1
+
    add r0,r1,r2
+
    add r0,r2 //this is a shorthand for add r0,r0,r2
+
    print r0
+
 
+
 
      
 
      
 
==== Computer architecture ====
 
==== Computer architecture ====

Latest revision as of 18:40, 23 June 2013

Hackerspace event.png

[Hackerspace.gr external link]
Starts Organizer
Tue 18 Jun 2013 19:00 Hackerspace.gr
Ends Event Owner
Tue 18 Jun 2013 21:00 User:Skmp

Switches! Lots of them!



we'll actually split into teams and all, so we'll really need the laptops this time around

slides are in github

Aftermath

Computer architecture

  • Introduction
    • Buses/Protocols, basic design ideas
    • how is cpu design done
    • What are SoCs
    • How does a typical simple cpu looks like
    • Emulation/simulation
      • Structure of a typical emulator
  • Hands on stuff !
    • Think together an extremely simple cpu
    • Split into three teams
    • Implement it in verilog (team A)
    • Implement it in C/C++ (team B)
    • Implement a simple assembler (team C)
  • Think together a custom, minimal SoC
    • We'll actually implement this later on :)

Also checkout The main page