Difference between revisions of "PLD Workshop 25 06 2013"

From Hackerspace.gr
Jump to: navigation, search
(Created page with "{{Event |logo=Hackerspace event.png |what=PLD/FPGA Workshop 1.5 |tagline=Switches! Lots of them! |eventowner=User:Skmp |who=Hackerspace.gr |url=Hackerspace.gr |from=2013/06/25 19...")
 
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 will be located in [https://github.com/pld-lessons/slides github]''
  
 
==== Computer architecture ====
 
==== Computer architecture ====

Revision as of 23:06, 22 June 2013

Hackerspace event.png

[Hackerspace.gr external link]
Starts Organizer
Tue 25 Jun 2013 19:00 Hackerspace.gr
Ends Event Owner
Tue 25 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 will be located in github

Computer architecture

  • ISA Design
    • Some stuff about typical ISA design
    • ALU
    • Branching
    • Registers/Load store/etc
  • ISA Implementation
    • Pipeline description
  • Memory interfaces
    • MMIO/MMR
  • Hands on stuff !
    • Implement a simple assembler (hopefully we'll have some of it ready from the study work)
    • Implement flow control
    • Port the cpu to verilog
    • Extend the assembler for flow control
  • Think together a custom, minimal SoC
    • We'll actually implement this later on :)


Check the 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


Also checkout The main page