Control & Status Registers. Young Won Lim 4/22/16

Size: px
Start display at page:

Download "Control & Status Registers. Young Won Lim 4/22/16"

Transcription

1 Control & Status Registers

2 Copyright (c) Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free ocumentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free ocumentation License". Please send corrections (or suggestions) to youngwlim@hotmail.com. This document was produced by using OpenOffice.

3 csrgen Based on Chuck Benz ASIC and FPGA esign csrgen - generate verilog RTL code for processor memory maps in ASIC/FPGA designs 3

4 Module Interface 4

5 Module Interface System BUS I/F clk reset_l up_din up_addr up_csl up_rwl status1 stickybit1 stickybit2 4 6 example_lp 12 2 up_dout up_dout_enl control1 control2 repeatingfield0 repeatingfield1 morerepeat Status info from the peri-device Control signal to the peri-device 5

6 Module Interface address bus data bus clk reset_l up_din up_addr up_csl up_rwl status1 stickybit1 stickybit2 4 6 example_lp 12 2 up_dout; up_dout_enl; control1; control2; repeatingfield0; repeatingfield1; morerepeat; addr rdata wdata Peripheral evice Processor 6

7 Memory Access Operations Memory CPU Memory CPU WR n-bit ata k-bit Address R n-bit ata k-bit Address 7

8 Memory R & WR Operations Input n-bit word Memory CPU k-bit address n-bit ata Bus WR Mem_En R/WR Memory Unit 2 k words n-bit per word k-bit Address Bus Memory CPU R Output n-bit word n-bit ata Bus k-bit Address Bus

9 Memory-mapped IO Operations Peri- evice Memory CPU WR ata Bus For normal memory address Address Bus Peri- evice Memory CPU R For I/O device address ata Bus Address Bus 9

10 System Bus Interface address bus data bus control bus clk reset_l up_din up_addr up_csl up_rwl status1 stickybit1 stickybit2 4 6 example_lp 12 2 up_dout; up_dout_enl; control1; control2; repeatingfield0; repeatingfield1; morerepeat; 10

11 System Bus Registers address bus data bus control bus up_din up_din up_dout_ up_dout up_addr up_addr up_dout_enl up_csl up_csl up_csl up_csl up_csl up_rwl up_rwl up_rwl 11

12 System Bus ata Registers address bus data bus control bus up_din up_din up_dout_ up_dout Control_Sig_ Control_Sig Status_Sig 12

13 Combinational Logic Block Sensitivity Lists default assignments Control_Sig <= Control_Sig_ <= up_din up_dout <= up_dout_ <= Status_Sig 13

14 Reg Signal 14

15 Control register input signals Control_Sig_ <= up_din up_din up_din Control_Sig_ Control_Sig 15

16 Address ecoder A0 A1 up_addr[2:0] A2 A3 A4 A5 A6 A7 16

17 From up_din to control register input signals (up_csl &!up_csl &!up_rwl) IE if (IE & A0) if (IE & A1) up_din[7:0] if (IE & A2) up_din[7:0] if (IE & A3) up_din[3:0] if (IE & A4) if (IE & A5) up_din[7] if (IE & A5) ((stickybit2s_ & ~up_din[6]) stickybit2) if (IE & A6) up_din[7] if (IE & A6) up_din[6] if (IE & A7) up_din[7] if (IE & A7) up_din[6] control1_[7:0] control2_[7:0] control2_[11:] stickybit1s_ stickybit2s_ repeatingfield0_ morerepeat_[0] repeatingfield1_ morerepeat_[1] 17

18 Control Register Input Condition (up_csl &!up_csl &!up_rwl) IE A0 A1 up_csl up_csl up_csl up_addr[2:0] A2 A3 A4 A5 A6 A7 up_csl up_csl Chip Select write up_csl up_rwl 1

19 Control Register Timing iagram up_csl up_csl Chip Select write up_csl up_rwl up_addr up_din up_din Control_Sig up_din up_din Control_Sig_ Control_Sig 19

20 FlipFlop with Enable if (IE & A0) AA_ AA AA_ IE A? EN AA EN 0 1 CK 20

21 Control Register Input from in (up_csl &!up_csl &!up_rwl) IE A0 A1 up_csl up_csl up_rwl IE up_addr[2:0] A2 A3 A4 A5 A6 A7 if (IE & A0) AA_ AA up_din up_din AA_ IE A? EN AA AA Control Register 21

22 Stickybit Registers up_din up_din[7] stickybit1s_ stickybit1s OE A5 IE A5 EN stickybit2s_ up_din up_din[6] stickybit2s stickybit2 IE A5 EN 22

23 Stickybit Registers Combinational Feedback Loop up_din[6] stickybit2s_ stickybit2 High stickybit2 from peri device turns on the feedback loop This H can only be turned off by H up_din[6] H pulse turns on the loop Stable Loop Stuck-At set_false_path STA command H pulse turns off the loop 0 23

24 Stickybit Registers related code segments 24

25 RepeatingField Registers related code segments 25

26 Write Registers clk reset_l up_din up_addr up_csl up_rwl status1 stickybit1 stickybit2 4 6 example_lp 12 2 up_dout; up_dout_enl; control1; control2; repeatingfield0; repeatingfield1; morerepeat; addr data Peripheral evice Processor control1_ control2_ 12 control1 control2 12 control1 control2 stickybit1s_ stickybit1s stickybit1s stickybit2s_ stickybit2s stickybit2s repeatingfield0_ repeatingfield0 repeatingfield0 repeatingfield1_ morerepeat_ 2 repeatingfield1 morerepeat 2 repeatingfield1 morerepeat 26

27 Output data register input signals up_dout_ <= Status_Sig Status_Sig up_dout_ up_dout 27

28 Input data to up_dout register (up_csl &!up_csl & up_rwl) OE if (OE & A0) {devicei, version} if (OE & A1) control1 if (OE & A2) control2[7:0] if (OE & A3) {4'b0000, control2[11:]} if (OE & A4) {2b00, status1} if (OE & A5) {stickybit1s, stickybit2s, 6'b000000} if (OE & A5) 0 if (OE & A6) {repeatingfield0, morerepeat[0], 6'b000000} if (OE & A7) {repeatingfield1, morerepeat[1], 6'b000000}; up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] stickybit1s_ up_dout_[7:0] up_dout_[7:0] 2

29 Status Register Output Condition (up_csl &!up_csl & up_rwl) IE A0 A1 up_csl up_csl up_csl up_addr[2:0] A2 A3 A4 A5 A6 A7 up_csl Chip Select Read up_csl up_csl 29

30 Output ata Register Timing iagram up_csl up_csl Chip Select write up_csl up_rwl up_addr up_din Status_Sig up_dout up_dout_enl Status_Sig up_dout_ up_dout 30

31 From Status Signals to out (up_csl &!up_csl &!up_rwl) OE up_csl up_csl up_rwl OE up_addr[2:0] {devicei, version} control1 control2[7:0] {4'b0, control2[11:]} {2b0, status1} up_dout_[7:0] up_dout {stickybit1s, stickybit2s, 6'b0} 0 OE EN {rptfd0, mrpt[0], 6'b0} {rptfd1, mrpt[1], 6'b0}; 31

32 Read Status Registers clk reset_l up_din up_addr up_csl up_rwl status1 stickybit1 stickybit2 4 6 example_lp 12 2 up_dout; up_dout_enl; control1; control2; repeatingfield0; repeatingfield1; morerepeat; addr data Peripheral evice Processor {devicei, version} control1 control2[7:0] {4'b0, control2[11:]} {2b0, status1} {stickybit1s, stickybit2s, 6'b0} 0 {rptfd0, mrpt[0], 6'b0} {rptfd1, mrpt[1], 6'b0}; up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] up_dout_[7:0] stickybit1s_ up_dout_[7:0] up_dout_[7:0] 32

33 FF Inference 33

34 34 Registers up_din up_addr up_csl up_csl up_rwl up_dout up_dout_enl version devicei control1 control2 stickybit1s stickybit2s repeatingfield0 repeatingfield1 morerepeat 12 2 up_din up_addr up_csl up_csl up_rwl up_dout_ (up_csl up_rwl) 0 1 control1_ control2_ stickybit1s_ stickybit2s_ repeatingfield0_ repeatingfield1_ morerepeat_

35 Module Skeleton (1) 35

36 Module Skeleton (2) 36

37 ocumentation 37

38 Properties of s (1) 3

39 Properties of s (2) 39

40 Properties of s (3) 40

41 References [1] [2] [3] [4]

RAM (1A) Young Won Lim 11/12/13

RAM (1A) Young Won Lim 11/12/13 RAM (1A) Young Won Lim 11/12/13 opyright (c) 2011-2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version

More information

Memory Arrays (4H) Gate Level Design. Young Won Lim 3/15/16

Memory Arrays (4H) Gate Level Design. Young Won Lim 3/15/16 Arrays (4H) Gate Level Design Young Won Lim 3/15/16 Copyright (c) 2011, 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation

More information

Memory (1A) Young Won Lim 9/7/17

Memory (1A) Young Won Lim 9/7/17 (1A) Copyright (c) 21-26 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

HW / SW Implementation Overview (0A) Young Won Lim 7/16/16

HW / SW Implementation Overview (0A) Young Won Lim 7/16/16 HW / SW Implementation Copyright (c) 213-216 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

FPGA RAM (C1) Young Won Lim 5/13/16

FPGA RAM (C1) Young Won Lim 5/13/16 FPGA RAM (C) Copyright (c) 204-206 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version.2 or any later version

More information

Accessibility (1A) Young Won Lim 8/22/13

Accessibility (1A) Young Won Lim 8/22/13 Accessibility (1A) Copyright (c) 2011-2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

Pointers (1A) Young Won Lim 11/1/17

Pointers (1A) Young Won Lim 11/1/17 Pointers (1A) Copyright (c) 2010-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Latch Based Design (1A) Young Won Lim 2/18/15

Latch Based Design (1A) Young Won Lim 2/18/15 Latch Based Design (1A) Copyright (c) 2015 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

Applications of Pointers (1A) Young Won Lim 12/26/17

Applications of Pointers (1A) Young Won Lim 12/26/17 Applications of (1A) Copyright (c) 2010-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

Tiny CPU Data Path (2B) Young Won Lim 5/2/16

Tiny CPU Data Path (2B) Young Won Lim 5/2/16 Tiny CPU Data Path (2B) Copyright (c) 24-26 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version.2 or any later

More information

Pointers (1A) Young Won Lim 1/5/18

Pointers (1A) Young Won Lim 1/5/18 Pointers (1A) Copyright (c) 2010-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Pointers (1A) Young Won Lim 1/9/18

Pointers (1A) Young Won Lim 1/9/18 Pointers (1A) Copyright (c) 2010-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Structure (1A) Component

Structure (1A) Component Component Copyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Cache Memory. Young Won Lim 5/31/16

Cache Memory. Young Won Lim 5/31/16 Copyright (c) 2010-2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Content Addressable Memory (1A) Young Won Lim 6/1/16

Content Addressable Memory (1A) Young Won Lim 6/1/16 Content Addressable Memory (1A) Copyright (c) 21-216 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Functions (4A) Young Won Lim 5/8/17

Functions (4A) Young Won Lim 5/8/17 Functions (4A) Copyright (c) 2015 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Functions (4A) Young Won Lim 3/16/18

Functions (4A) Young Won Lim 3/16/18 Functions (4A) Copyright (c) 2015 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

FPGA Configuration (1C) Young Won Lim 12/1/13

FPGA Configuration (1C) Young Won Lim 12/1/13 (1C) Young Won Lim 12/1/13 Copyright (c) 2011-2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Pointers (1A) Young Won Lim 1/14/18

Pointers (1A) Young Won Lim 1/14/18 Pointers (1A) Copyright (c) 2010-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Adders (A) Young Won Lim 10/7/13

Adders (A) Young Won Lim 10/7/13 Adders (A) /7/3 Copyright (c) 2-23 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version.2 or any later version

More information

Binary Search Tree (3A) Young Won Lim 6/2/18

Binary Search Tree (3A) Young Won Lim 6/2/18 Binary Search Tree (A) /2/1 Copyright (c) 2015-201 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Class (1A) Young Won Lim 9/8/14

Class (1A) Young Won Lim 9/8/14 Class (1A) Copyright (c) 2011-2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Readings: Storage unit. Can hold an n-bit value Composed of a group of n flip-flops. Each flip-flop stores 1 bit of information.

Readings: Storage unit. Can hold an n-bit value Composed of a group of n flip-flops. Each flip-flop stores 1 bit of information. Registers Readings: 5.8-5.9.3 Storage unit. Can hold an n-bit value Composed of a group of n flip-flops Each flip-flop stores 1 bit of information ff ff ff ff 178 Controlled Register Reset Load Action

More information

Binary Search Tree (2A) Young Won Lim 5/17/18

Binary Search Tree (2A) Young Won Lim 5/17/18 Binary Search Tree (2A) Copyright (c) 2015-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or

More information

Overview (1A) Young Won Lim 9/9/17

Overview (1A) Young Won Lim 9/9/17 Overview (1A) Copyright (c) 2009-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Polymorphism Overview (1A) Young Won Lim 2/20/18

Polymorphism Overview (1A) Young Won Lim 2/20/18 Polymorphism Overview (1A) Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Microprocessor Architecture. mywbut.com 1

Microprocessor Architecture. mywbut.com 1 Microprocessor Architecture mywbut.com 1 Microprocessor Architecture The microprocessor can be programmed to perform functions on given data by writing specific instructions into its memory. The microprocessor

More information

Eulerian Cycle (2A) Young Won Lim 4/26/18

Eulerian Cycle (2A) Young Won Lim 4/26/18 Eulerian Cycle (2A) Copyright (c) 2015 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

Algorithms Bubble Sort (1B) Young Won Lim 4/5/18

Algorithms Bubble Sort (1B) Young Won Lim 4/5/18 Algorithms Bubble Sort (1B) Young Won Lim 4/5/18 Copyright (c) 2017 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation

More information

A Sudoku Solver (1A) Richard Bird Implementation. Young Won Lim 11/15/16

A Sudoku Solver (1A) Richard Bird Implementation. Young Won Lim 11/15/16 A Sudoku Solver (1A) Richard Bird Implementation Copyright (c) 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License,

More information

Binary Search Tree (3A) Young Won Lim 6/4/18

Binary Search Tree (3A) Young Won Lim 6/4/18 Binary Search Tree (A) /4/1 Copyright (c) 2015-201 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Binary Search Tree (3A) Young Won Lim 6/6/18

Binary Search Tree (3A) Young Won Lim 6/6/18 Binary Search Tree (A) //1 Copyright (c) 2015-201 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Pointers (1A) Young Won Lim 3/5/18

Pointers (1A) Young Won Lim 3/5/18 Pointers (1A) Copyright (c) 2010-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

SDR SDRAM Controller White Paper

SDR SDRAM Controller White Paper SR SRAM Controller escription The Single ata Rate(SR) Synchronous ynamic Random Access Memory(SRAM) Controller provides a simplified interface to industry standard SR SRAM memory. A top level system diagram

More information

Introduction to Digital Logic Missouri S&T University CPE 2210 Hardware Implementations

Introduction to Digital Logic Missouri S&T University CPE 2210 Hardware Implementations Introduction to Digital Logic Missouri S&T University CPE 2210 Hardware Implementations Egemen K. Çetinkaya Egemen K. Çetinkaya Department of Electrical & Computer Engineering Missouri University of Science

More information

Algorithms (7A) Young Won Lim 4/10/17

Algorithms (7A) Young Won Lim 4/10/17 Algorithms (7A) Copyright (c) 2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Algorithms (7A) Young Won Lim 4/18/17

Algorithms (7A) Young Won Lim 4/18/17 Algorithms (7A) Copyright (c) 2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Pointers (1A) Young Won Lim 1/22/18

Pointers (1A) Young Won Lim 1/22/18 Pointers (1A) Copyright (c) 2010-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Overview (1A) Young Won Lim 9/14/17

Overview (1A) Young Won Lim 9/14/17 Overview (1A) Copyright (c) 2009-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Function Overview (1A) Young Won Lim 10/23/17

Function Overview (1A) Young Won Lim 10/23/17 Function Overview (1A) Copyright (c) 2010 2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or

More information

Monoid (4A) Young Won Lim 8/12/17

Monoid (4A) Young Won Lim 8/12/17 Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

ARM Architecture (1A) Young Won Lim 3/20/18

ARM Architecture (1A) Young Won Lim 3/20/18 Copyright (c) 2014-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Overview (1A) Young Won Lim 9/25/17

Overview (1A) Young Won Lim 9/25/17 Overview (1A) Copyright (c) 2009-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Applications of Arrays (1A) Young Won Lim 2/11/17

Applications of Arrays (1A) Young Won Lim 2/11/17 Copyright (c) 2009-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Today. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses

Today. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses Today Comments about assignment 3-43 Comments about assignment 3 ASICs and Programmable logic Others courses octor Per should show up in the end of the lecture Mealy machines can not be coded in a single

More information

A Sudoku Solver Pruning (3A)

A Sudoku Solver Pruning (3A) A Sudoku Solver Pruning (3A) Richard Bird Implementation Copyright (c) 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation

More information

Pointers (1A) Young Won Lim 2/6/18

Pointers (1A) Young Won Lim 2/6/18 Pointers (1A) Copyright (c) 2010-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Operators (2A) Young Won Lim 10/2/13

Operators (2A) Young Won Lim 10/2/13 Operators (2A) Copyright (c) 2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

SystemC Channels (03A) SystemC

SystemC Channels (03A) SystemC SystemC Channels (03A) SystemC Copyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Pointers (1A) Young Won Lim 2/10/18

Pointers (1A) Young Won Lim 2/10/18 Pointers (1A) Copyright (c) 2010-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Day06 A. Young W. Lim Mon. Young W. Lim Day06 A Mon 1 / 16

Day06 A. Young W. Lim Mon. Young W. Lim Day06 A Mon 1 / 16 Day06 A Young W. Lim 2017-09-18 Mon Young W. Lim Day06 A 2017-09-18 Mon 1 / 16 Outline 1 Based on 2 Introduction C Program Control Young W. Lim Day06 A 2017-09-18 Mon 2 / 16 Based on "C How to Program",

More information

Applications of Arrays (1A) Young Won Lim 3/15/17

Applications of Arrays (1A) Young Won Lim 3/15/17 Copyright (c) 2009-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Operators (2A) Young Won Lim 10/5/13

Operators (2A) Young Won Lim 10/5/13 Operators (2A) Copyright (c) 2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Haskell Overview III (3A) Young Won Lim 10/4/16

Haskell Overview III (3A) Young Won Lim 10/4/16 (3A) Copyright (c) 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Haskell Overview IV (4A) Young Won Lim 10/13/16

Haskell Overview IV (4A) Young Won Lim 10/13/16 (4A) Copyright (c) 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Applications of Pointers (1A) Young Won Lim 4/24/18

Applications of Pointers (1A) Young Won Lim 4/24/18 (1A) Coyright (c) 2010-2018 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version ublished

More information

Applications of Pointers (1A) Young Won Lim 4/11/18

Applications of Pointers (1A) Young Won Lim 4/11/18 (1A) Coyright (c) 2010-2018 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version ublished

More information

The CPU Bus : Structure 0

The CPU Bus : Structure 0 The CPU Bus : Structure 0 The following can be applied to both the internal CPU buses and the external system buses. This distinction becomes blurred when we discuss Systems on a single Chip (SoC). The

More information

State Monad (3D) Young Won Lim 9/25/17

State Monad (3D) Young Won Lim 9/25/17 Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Pointers (1A) Young Won Lim 10/18/17

Pointers (1A) Young Won Lim 10/18/17 Pointers (1A) Coyright (c) 2010-2013 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

The Complexity of Algorithms (3A) Young Won Lim 4/3/18

The Complexity of Algorithms (3A) Young Won Lim 4/3/18 Copyright (c) 2015-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Background Functions (1C) Young Won Lim 4/3/18

Background Functions (1C) Young Won Lim 4/3/18 Background Functions (1C) Copright (c) 2016-2017 Young W. Lim. Permission is granted to cop, distribute and/or modif this document under the terms of the GNU Free Documentation License, Version 1.2 or

More information

Applications of Structures (1A) Young Won Lim 12/8/17

Applications of Structures (1A) Young Won Lim 12/8/17 Applications of (1A) Copyright (c) 2009-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

Haskell Overview IV (4A) Young Won Lim 10/24/16

Haskell Overview IV (4A) Young Won Lim 10/24/16 (4A) Copyright (c) 2016 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Side Effects (3A) Young Won Lim 1/13/18

Side Effects (3A) Young Won Lim 1/13/18 Side Effects (3A) Copyright (c) 2016-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Algorithms Overview (1A) Young Won Lim 3/29/18

Algorithms Overview (1A) Young Won Lim 3/29/18 Algorithms Overview (1A) Copyright (c) 2017 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or

More information

The HTTP Protocol HTTP

The HTTP Protocol HTTP The HTTP Protocol HTTP Copyright (c) 2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

CORDIC Fixed Point Simulation. Young Won Lim 2/28/12

CORDIC Fixed Point Simulation. Young Won Lim 2/28/12 CORDIC Fixed Point Simulation Copyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or

More information

Seamless Refinement from Transaction Level to RTL Using SystemVerilog Interfaces

Seamless Refinement from Transaction Level to RTL Using SystemVerilog Interfaces Seamless Refinement from Transaction Level to RTL Using SystemVerilog Interfaces Jonathan Bromley Doulos Ltd, Ringwood, UK jonathan.bromley@doulos.com 2 Outline Introduction: refinement steps and verification

More information

Pointers (1A) Young Won Lim 10/23/17

Pointers (1A) Young Won Lim 10/23/17 Pointers (1A) Coyright (c) 2010-2013 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Libraries (1A) Young Won Lim 6/5/17

Libraries (1A) Young Won Lim 6/5/17 Libraries (1A) Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Side Effects (3B) Young Won Lim 11/20/17

Side Effects (3B) Young Won Lim 11/20/17 Side Effects (3B) Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Applications of Structures (1A) Young Won Lim 12/4/17

Applications of Structures (1A) Young Won Lim 12/4/17 Applications of (1A) Copyright (c) 2009-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

Side Effects (3B) Young Won Lim 11/23/17

Side Effects (3B) Young Won Lim 11/23/17 Side Effects (3B) Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Monad (1A) Young Won Lim 6/9/17

Monad (1A) Young Won Lim 6/9/17 Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Side Effects (3B) Young Won Lim 11/27/17

Side Effects (3B) Young Won Lim 11/27/17 Side Effects (3B) Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

State Monad Example (3H) Young Won Lim 2/16/18

State Monad Example (3H) Young Won Lim 2/16/18 Copyright (c) 2016-2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

Applications of Pointers (1A) Young Won Lim 2/27/18

Applications of Pointers (1A) Young Won Lim 2/27/18 Alications of (1A) Coyright (c) 2010-2018 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Minimum Spanning Tree (5A) Young Won Lim 5/11/18

Minimum Spanning Tree (5A) Young Won Lim 5/11/18 Minimum Spanning Tree (5A) Copyright (c) 2015 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Structure (1A) Young Won Lim 7/30/13

Structure (1A) Young Won Lim 7/30/13 Structure (1A) Copyright (c) 2010 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

LG6: Structure, Flow and Tools (SFT)

LG6: Structure, Flow and Tools (SFT) LG6: Structure, Flow and Tools (SFT) Topics: Bus Structures, esign Flow and Tools. LG6.1 - SFT: Basic Bus: One Initiator. LG6.2 - SFT: Basic Bus: Two Initiators. LG6.3 - SFT: Bridged Bus Structure. LG6.4

More information

Pthread (9A) Pthread

Pthread (9A) Pthread Pthread (9A) Pthread Copyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

JavaScript (5A) JavaScript

JavaScript (5A) JavaScript JavaScript (5A) JavaScript Copyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information

Applications of Pointers (1A) Young Won Lim 3/14/18

Applications of Pointers (1A) Young Won Lim 3/14/18 (1A) Coyright (c) 2010-2018 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version ublished

More information

Complex Integration (2A) Young Won Lim 1/29/13

Complex Integration (2A) Young Won Lim 1/29/13 omplex Integration (2A) opyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free ocumentation License, Version 1.2 or any later

More information

Applications of Pointers (1A) Young Won Lim 3/21/18

Applications of Pointers (1A) Young Won Lim 3/21/18 (1A) Coyright (c) 2010-2018 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version ublished

More information

Graph (1A) Young Won Lim 4/19/18

Graph (1A) Young Won Lim 4/19/18 Graph (1A) Copyright (c) 2015 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Applications of Pointers (1A) Young Won Lim 3/31/18

Applications of Pointers (1A) Young Won Lim 3/31/18 (1A) Coyright (c) 2010-2018 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version ublished

More information

Monad Background (3A) Young Won Lim 11/20/17

Monad Background (3A) Young Won Lim 11/20/17 Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

SystemC Processes (02A) SystemC

SystemC Processes (02A) SystemC SystemC Processes (02A) SystemC Copyright (c) 2012 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Applications of Pointers (1A) Young Won Lim 1/5/18

Applications of Pointers (1A) Young Won Lim 1/5/18 Alications of (1A) Coyright (c) 2010-2017 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

IO Monad (3C) Young Won Lim 8/23/17

IO Monad (3C) Young Won Lim 8/23/17 Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

GHCi: Getting started (1A) Young Won Lim 5/26/17

GHCi: Getting started (1A) Young Won Lim 5/26/17 GHCi: Getting started (1A) Copyright (c) 2016-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Example 1. Young Won Lim 11/17/17

Example 1. Young Won Lim 11/17/17 Copyright (c) 2010-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published

More information

ELF (1A) Young Won Lim 10/22/14

ELF (1A) Young Won Lim 10/22/14 ELF (1A) Copyright (c) 2010-2014 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

CHAPTER 12 REGISTERS AND COUNTERS

CHAPTER 12 REGISTERS AND COUNTERS HPTER 2 REGISTERS N OUNTERS ontents 2. Registers and Register Transfers 2.2 Shift Registers 2.3 esign of inary ounters 2.4 ounters for Other Sequences 2.5 ounter esign Using SR and JK FlipFlops 2.6 erivation

More information

CS 151 Quiz 4. Instructions: Student ID. (Last Name) (First Name) Signature

CS 151 Quiz 4. Instructions: Student ID. (Last Name) (First Name) Signature CS 151 Quiz 4 Name Student ID Signature :, (Last Name) (First Name) : : Instructions: 1. Please verify that your paper contains 9 pages including this cover. 2. Write down your Student-Id on the top of

More information

Polymorphism (1A) Young Won Lim 8/22/13

Polymorphism (1A) Young Won Lim 8/22/13 Polymorhism (1A) Coyright (c) 2011-2012 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later

More information

Pointers (1A) Young Won Lim 12/4/17

Pointers (1A) Young Won Lim 12/4/17 Pointers (1A) Coyright (c) 2010-2017 Young W. Lim. Permission is granted to coy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version

More information

Example 1 : using 1-d arrays. Young Won Lim 12/13/17

Example 1 : using 1-d arrays. Young Won Lim 12/13/17 : using 1-d arrays Copyright (c) 2010-2017 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any

More information