This page offers course materials of two 2008 spring semester classes * Embedded Hardware (2 credits), and * Embedded Software (2 credits) for graduate students at Department of Computer Engineering, Hiroshima University. These two courses are conducted for 4+4=8 weeks course of 5 hours (every Friday afternoon 12:50-18:00 :-) each. The prerequisite of these courses is to have enough knowledge about logic circuits, sequential logic, digital circuit design, regular expressions, context free languages, and context analysis. More specifically, students who enroll these courses can + design a correct combinatorial circuit using basic logic gates (AND, OR, NOT, XOR, etc) for a given Boolean function, + simplify a Boolean function (with don”Ēt care conditions) using a Karnaugh map, + design a fundamental sequential logic circuit such as a counter and a state machine using flip flops and basic logic gates, + write a regular expression for lexical analysis, and + write a context free grammar for parsing text. The course materials are as follows: * Embedded Hardware (4 weeks) ** Week 1: Design of Combinational Logic: Full Adder, Adder, and ALU {{ref emb1.pdf}} ** Week 2: Design of Sequential Logic: Flip flops, counters, state machine, and stacks {{ref emb2.pdf}} **Week 3: Chattering removal, LCD controller, memory, and instruction fetch {{ref emb3.pdf}} ** Week 4: CPU design: instruction set, control logic, and machine program {{ref emb4.pdf}} * Embedded Software (4 weeks) ** Week 5: Perl programming and design of assembler {{ref emb5.pdf}} ** Week 6: Compiler Compiler :Flex and Bison {{ref emb6.pdf}} ** Week 7: TINYC Compiler {{ref emb7.pdf}} ** Week 8: TINYC Programming {{ref emb8.pdf}}