Design of Embedded DSP Processors
|
|
- Meghan Stevenson
- 6 years ago
- Views:
Transcription
1 Design of Embedded DSP Processors Unit 10: Integration and Verification 10/3/2017 Unit 10 of TSEA H1 1
2 Three integrations 1. Hardware integration (Integration of RTL codes) 2. Integration of the behavior model (the simulator) 3. Phy integration (HW protocol, clock /power domains, and critical paths) 10/3/2017 Unit 10 of TSEA H1 2
3 Contents 1. Integration of an IP core 2. Integration of SoC 3. Introduction to verification 4. Write testbench 10/3/2017 Unit 10 of TSEA H1 3
4 Integration of a (processor) core 10/3/2017 Unit 10 of TSEA H1 4
5 Some cores are complicated A power core 10/3/2017 For teachers use the book 5
6 RF PC FSM PM Instruction decoder AGU DMs Copyright of Linköping University, all rights reserved Some cores are simple Control path Addressing path mem subsystem MAC accelerator ALU Datapath Memory bus Register bus Control signals Integrate datapath, data access, accelerators, and control path into a core 10/3/2017 Unit 10 of TSEA H1 6
7 It is not just connections behavior function SoC Micro arc RTL layout structure 1. Functional: Be sure all instructions can be executed with available HW and connections, no structural hazard Reachable: All special registers/ports can be accessed 2. Structural: HW arch follows the instruction-set Combinational: bus matches, width, endian, direction Sequential: pipeline modification and balancing 3. Physical: speed, power consumption, silicon cost New hidden critical path, unnecessary toggling or even bugs after integration (missing keeper, missing default). Clock and power domains 10/3/2017 Unit 10 of TSEA H1 7 physical
8 E.g. integration for move/load/store DM0: Data memory 0 I/O port registers Special registers in AGU DM1: Data memory 1 Accumulator register in MAC General register file Special registers in control path Immediate data from control path General RF to all, so that all are reachable via general RF 10/3/2017 Unit 10 of TSEA H1 8
9 Move instructions based on busses 1. Should be a move instruction if a connection is available 2. Move must be emulated if there is no direct connection available 10/3/2017 Unit 10 of TSEA H1 9
10 Emulate when there is no HW Operation From To Emulation Move DM0 DM1 Load DM0 to GRF; Store GRF to DM1 Move DM1 DM0 Load DM1 to GRF; Store GRF to DM0 Load I/O port DM1/0 Load I/O port to GRF; Store GRF to DM1/0 Store DM1/0 I/O port Load DM1/0 to GRF; Store GRF to I/O port Load DM0 ACR Load DM0 to GRF; Move GRF to ACR (G,H,L) Store ACR DM0 Move ACR (G,H,L) to GRF; Store GRF to DM0 Load DM1 ACR Load DM1 to GRF; Move GRF to ACR (G,H,L) Store ACR DM1 Move ACR (G,H,L) to GRF; Store GRF to DM1 Load DM0/1 SRF Load DM0/1 to GRF; Move GRF to SRF Store SRF DM0/1 Move SRF to GRF; Store GRF to DM0/1 10/3/2017 Unit 10 of TSEA H1 10
11 Data Format Conversion While Accessing ACR Instruction Load ACR lower part Load ACR high part Load ACR guard Load ACR high and guard Load ACR Store ACR higher part Store ACR lower part Store guard bits in ACR Store result Operation ACR <= {ACR[39:16], Ra[15:0]} ACR <= { ACR[39:32], Ra[15:0]; ACR[15:0]} ACR <= { Ra[7:0], ACR[31:0]} ACR <= { {8{Ra[15]}}, Ra[15:0]; 16 b0} ACR<={ {8{Ra[15]}, Ra[15:0]; Rb[15:0]} Rd <= ACR[31:16] Rd <= ACR[15:0] Rd [7:0] <= ACR[39:32] Rd<=Saturation (round(acr[31:16])) 10/3/2017 Unit 10 of TSEA H1 11
12 Integrate RF / ALU / MAC into a core Operands and results Supply operands from memories and RF Shuffling multi operands to avoid conflicts Data forwarding for ALU, MAC, AGU Control signals Supply correct control signals at right time Manage critical control signal fanout 10/3/2017 Unit 10 of TSEA H1 12
13 Integrate control path into a core Avoid structural hazard Sufficient availalbe HW or remove instructions Careful memory partition, pipeline shimming Avoid pipeline hazard Check all pipeline execution tables Check control signals arrive at right pipelines Controls for clock / Power gating 10/3/2017 Unit 10 of TSEA H1 13
14 Implicit micro-operations: for example bus transactions, and instruction decoding Data memory addressing Operands Destination Operation Explicit specifiers Target addressing Copyright of Linköping University, all rights reserved Be sure there is no missing (explicit and hidden) function All micro-operations in an assembly instruction Explicit micro-operations specified in assembly manual: Explicit micro-operations specified in assembly code and binary machine code: Implicit microoperations not specified in assembly code: For example flag ops and PC<=PC+1 10/3/2017 Unit 10 of TSEA H1 14
15 Sufficient exposes to SoC 1. Memory (mapped / addressed) I/O 2. Connection to interrupt controller and timer 3. DMA / memory interface design 4. Data input / output design 5. Design for program loading and POR 6. Host interface and SoC bus interface 7. Nonfunctional (DFT, debug, trace, gatings) 10/3/2017 Unit 10 of TSEA H1 15
16 Datapath physical integration Critical path in a function block (such as MAC) and critical path in the core To simplify pipeline of a core, combinational pins may exist between function blocks. Hidden critical path will be exposed, mostly are false path not existing in specification. What is and how to manage false path 10/3/2017 Unit 10 of TSEA H1 16
17 Physical critical paths in DP Memory ports Registers A[15:0] Guard and concatenate on inputs Signed B B[15:0] Unsigned B 0 1 ACR1 ACR2 ACRm ACRn 17x17 bits multiplier Pipeline 10/3/2017 Unit 10 of TSEA H1 17
18 Physical critical paths in DP D-mem 1 D-mem 2 D-mem 3 D-mem 4 RF OPB RF OPA Constant 32 to1 32 to1 Long wires Long wires signed unsigned Very heavy fan out here! pipeline-op Multiplier 10/3/2017 Unit 10 of TSEA H1 18
19 Pipeline balancing Moving functions between pipelines Pre-processing Pre-processing Kernel processing Kernel processing Post-processing Post-processing (a) Before pipeline modification (b) After pipeline modification 10/3/2017 Unit 10 of TSEA H1 19
20 AA <= OPA AB <= OPB AA <= OPA AB <= INV (OPB) AA <= INV(OPA) AB <= OPB AA <= OPA, AB <= 1 AA <= 1, AB <= OPB AA <= OPA, AB <= -1 AA <= -1, AB <= OPB AA <= OPA AB <= OPB AA <= OPA AB <= INV (OPB) AA <= INV(OPA) AB <= OPB AA <= OPA, AB <= 1 AA <= 1, AB <= OPB AA <= OPA, AB <= -1 AA <= -1, AB <= OPB Pipeline balancing: Moving functions between pipelines Copyright of Linköping University, all rights reserved Pipeline register OPA <= {A[15], A[15:0]}; OPB <= {B[15], B[15:0]} OPA <= {A[15], A[15:0]}; OPB <= {B[15], B[15:0]} A+B, A-B, B-A, A+1, B+1, A-1, B-1 A+B, A-B, B-A, A+1, B+1, A-1, B-1 Logic above for Pre-processing Pipeline register Kernel arithmetic component: RA[17:0] <= {AA[16:0], 1 b1} + {AB[16:0], Carry_in} Kernel arithmetic component: RA[17:0] <= {AA[16:0], 1 b1} + {AB[16:0], Carry_in} SRA [15:0] <= RA[16:1] saturation yes SRA[15:0] <= SAT (RA[17:1]) SRA [15:0] <= RA[16:1] saturation yes SRA[15:0] <= SAT (RA[17:1]) Carry and saturation flag Carry and saturation flag 10/3/2017 For teachers use the book 20 Finish (a) Finish (b)
21 Integrate a DSP subsystem 10/3/2017 Unit 10 of TSEA H1 21
22 Definition: A DSP subsystem A DSP subsystem (not yet a chip) consists of one or several DSP cores, data memories and program memories, peripheral modules (interrupt controller, DMA ctrl, timer, and main memory interface), and accelerators 10/3/2017 Unit 10 of TSEA H1 22
23 A DSP subsystem example BBP ADC port Memory interface MCU (the baseband controller) Host interface DAC port Baseband connection network Symbol processor DFE Symbol processor FFT Symbol processor Matrix LLR processor Bit processor FEC processor 10/3/2017 Unit 10 of TSEA H1 23
24 The integration includes 1. Functional: inter-core communication (data, ctrl) Data communication: use/not use system DDR Inter module FIFO, resource/memory sharing hardware Control semaphore: APB (flex)? custom design (quality)? 2. Structural: NoC IP or custom connections Combinational: Avoid inter-core combinational logic Sequential: convention: all latches are on the receiver side 3. Physical: OBS! Extra critical path! What to do? Add SoC pipelines, use communication / bus protocols, GALS manage multi clock domains, clock/power gating 10/3/2017 Unit 10 of TSEA H1 24
25 SoC Integration 10/3/2017 Unit 10 of TSEA H1 25
26 SoC definition Very confusing, most chips can be a SoC Several functional IP cores + IP modules + controller as a master (run OS and main) + on chip main memories + peripherals Could be even without a master (dataflow processor) (NPU or GPU master can be in another chip) 10/3/2017 Unit 10 of TSEA H1 26
27 A typical high-end SoC A smartphone chip from Qualcomm/MTK Include all RF + ADC + DAC + digital baseband + ARM Application processor cluster with NEON + Mali core + Rendering IP + ISP + video / audio codec + GSM module + CDMA2000 module + WiFi module + BT module + GPS module + AHB/CCI + chip level cache + LPDDR controller/phy + LED driver + MIPI controller/phy + USB controller/phy + APB bridge + always-on + human peripherals /3/2017 Unit 10 of TSEA H1 27
28 Oracle SPARC M7: A 20 nm 32-Core 64 MB L3 Cache 1TOPS Processor /3/2017 Unit 10 of TSEA H1 28
29 A typical low-end SoC An IoT chip: Intel Edison dual-core Intel Quark x86 CPU, Bluetooth module, WiFi module, ADC, DAC, UART (connect to a micro USB), I2C (connect to SD memory) A NB-IoT chip... 10/3/2017 Unit 10 of TSEA H1 29
30 Non-functional modules A module not for customer functions DFT: (ATPG, BIST, SoC, Boundary scan) What are that? Challenges (SoC test time)? DFT challenged by large combinational blocks DFT challenged by many memory blocks Trace Real time probing and buffering Power control module, clock gating module 10/3/2017 Unit 10 of TSEA H1 30
31 DMA Copyright of Linköping University, all rights reserved SoC of an embedded system DSPs MCU Accelerators L1: RF DP+CP L1: RF DP+CP DP+CP DM1 DMn PM DM1 DMn PM DMn PM I/F DMA DMA I/F DMA I/F SoC connection network and its arbitration / routing / control Main on-chip memory Nonvolatile memory I/F Off-chip DRAM I/F I/F 10/3/2017 Unit 10 of TSEA H1 31
32 Point to point network Traditional bus 2D crossbar network Router IP synthesizer Routing algorithm Round robin Priority arbitration First request first taken HW: Daisy chain Simple data Data link control protocol Data correction protocol Global memory addr. Distributed memory addr. Synch and clocking Driving and speed Copyright of Linköping University, all rights reserved SoC integration (in another course) System-on-chip level hardware integration Interconnection network NoC Connection and arbitrate protocol Data and addressing protocols Physical issues 10/3/2017 Unit 10 of TSEA H1 32
33 Finally: Build a SoC simulator A SoC simulator is the chip behavior model You may not have it, just use FPGA emulator 1.SW architecture: Speed, scalable, debug 2.Cycle accurate/behavior CORE simulation 3.SoC cycle accurate transactional simulation 4.Host adaptation to speed up SoC simulation 10/3/2017 Unit 10 of TSEA H1 33
34 Design for reuse 1. Designed to solve a general problem easily configurable to fit different applications. 2. Designed for use in multiple technologies For soft IP, the synthesis scripts make quality results with different libraries. 3. Designed for simulation with a variety of simulators With both Verilog and VHDL versions, verification test-benches, and work with all the major commercial simulators. 4. Designed with standards-based interfaces Unique or custom interfaces should not be used. 10/3/2017 Unit 10 of TSEA H1 34
35 Design for reuse 5. Verified independently to any SoC IP has full, standalone test-benches, verification suites, full test coverage. 6. Verified to a high level of confidence Need a MPW prototype, in an actual system running real software. 7. Fully documented applications and restrictions valid configurations and parameter values are documented. Any restrictions on configurations or parameter values are clearly stated. Interfacing requirements, restrictions on how the IP can be used are documented. 10/3/2017 Unit 10 of TSEA H1 35
36 Verification 10/3/2017 Unit 10 of TSEA H1 36
37 Verification in general HW Verification is to demonstrate the functional correctness of a design - Janick Bergeron, To prove the consistency between the final functional design and the paper specification. System verification: To verify the application function Hardware verification: To verify the HW compliance Verification versus HW test (fab follows the design) 10/3/2017 Unit 10 of TSEA H1 37
38 Re-convergence path Transformation Specification Design Verification Paper doc Transformation from a paper document Transformation Verification Without re-convergence With re-convergence 10/3/2017 Unit 10 of TSEA H1 38
39 Verification methodology Top HW function specification System verification Partition and bus design Bus level verification Block level design Block level verification RTL coding Classic verification flow Concurrent verification flow 10/3/2017 Unit 10 of TSEA H1 39
40 Compliance test To verify HW not to the system Execute instructions correctly To verify that the design complies with the specification the specification is the hardware design documents. Not the specification of applications. 10/3/2017 Unit 10 of TSEA H1 40
41 Compliance test Check operations following the instruction set manual Consuming the right number of clock cycles Writing back during correct cycles Checking all memory addressing models Checking all register addressing models Checking all branch instructions and conditions Checking all jump target addresses calculations Checking all configurations to every instruction Checking all acceleration functions 10/3/2017 Unit 10 of TSEA H1 41
42 Corner test Corner test Corner means Irregular, designs based on informal methods To limits, cross boundaries, finite precision Find possible corners Data boundary: flags, carry-out, scaling, saturation, overflow, underflow, rounding, forwarding, etc. Address boundary: memory address, stack, register file boundaries Irregular: split / merge bus, fractional +1 problem 10/3/2017 Unit 10 of TSEA H1 42
43 Datapath Corner test (optional) In the integer (fractional) datapath: All data truncation points, data concatenation points All guards, rounds, saturate, and flags All result patterns affecting flag values Corner cases to set and reset each flag Which instructions change / keep flags All cases changing data formats Change data types between ALU and MAC Change other data formats (such as the fractional multiplication, saturation for unsigned) 10/3/2017 Unit 10 of TSEA H1 43
44 Control / M Corner test (optional) All control and status registers are cleaned after system reset (while clocks are off by gating) All registers can be accessed according to the hardware specifications Reaction of all specified exceptions induced by Data dependency, Computing exception Overflow and underflow of the hardware stack FIFO limiters (top and the bottom registers) Corners of memory / register addressing (MAX/MIN) PC corners, values such as destinations of branches Starting/stopping points of hardware loop functions 10/3/2017 Unit 10 of TSEA H1 44
45 Random test Run the same randomly generated test vectors on the behavioral model and the RTL code A result consistency check gives results of the random test The method to run random tests is (1) to generate a random stimuli-set (instruction and data), run on instruction simulator first. (2) to run the same stimuli-set on RTL code (3) to compare results from the instruction set simulator and results from RTL code. 10/3/2017 Unit 10 of TSEA H1 45
46 Real code test Real code test run applications Supply programs and related stimuli to the instruction set simulator to get results / cycle cost The same results and cycle cost should be from the RTL code Test of the C-compiler 10/3/2017 Unit 10 of TSEA H1 46
47 Hierarchical verification Test benches Assembly instruction set simulator = RTL codes 10/3/2017 Unit 10 of TSEA H1 47
48 Test suit and DUT 10/3/2017 Unit 10 of TSEA H1 48
49 Testbench Example (1) clk_gen clk reset_gen reset_n input_gen in_port DUT DSP_Core out_port ouput_save 10/3/2017 Unit 10 of TSEA H1 49
50 Testbench Example (2) clk_gen reset_gen architecture bahav of clk_gen is begin process begin clk <= 1 ; wait for 10 ns; clk <= 0 ; wait for 10 ns; end process; end behav; architecture bahav of reset_gen is signal res_int_n :std_logic begin res_int_n <= 0, 1 after 10 ns; reset_int_n <= reset_n; end behav; 10/3/2017 Unit 10 of TSEA H1 50
51 Testbench Example (3) output_save use ieee.std_logic_textio.all; file output_file : text is out /data/out.txt ; variable l : line; process(clk) begin if (rising_edge(clk)) then write(l, out_port); writeline(output_file, l); end if; end process; input_gen use ieee.std_logic_textio.all; file input_file : text is in /data/in.txt ; variable l : line; variable slv: std_logic_vector(15 downto 0); process(clk) begin if (rising_edge(clk)) then if not (endfile(input_file)) then readline(input_file, l); read(l, slv); in_port <= slv; end if; end if; end process; 10/3/2017 Unit 10 of TSEA H1 51
52 Concepts Copyright of Linköping University, all rights reserved Review on integration behavior function SoC Micro arc RTL layout structure and verification Skills physical Integration and verification Micro architecture Register file ALU: Arithmetic & Logic MAC: MUL and ACC Memory and data access Program flow control Assembly coding tools Firmware plan & design 1. Functional: Be sure that all instructions mapped and can be executed (with available connections). All special registers/ports can be accessed (in)directly 2. Structural: HW arch adapted to instruction-set Combinational: bus matches, width, endian, direction Sequential: pipeline compliance with the specification 3. Physical: speed, power consumption, and cost New hidden critical path, unnecessary toggling or even bugs after integration (missing keeper, default). 10/3/2017 Unit 10 of TSEA H1 52
53 Self reading after the lecture The book was written in 2006, 10 years old. The integration engineering has been very much changed! Follow my slides and take chapter 19, 15, and 16 as references. Essential: Core integration is the essential part and will be in exam. 10/3/2017 Unit 10 of TSEA H1 53
54 Exciting time now! Let us discuss Whatever you want to discuss and related to HW You will have the chance after each lecture (Fö), do take the chance! Prepare your Qs for the next time 10/3/2017 Unit 10 of TSEA H1 54
55 LOGO Welcome to ask any questions you want to I can answer Or discuss together I want to know what you want Dake Liu, Room 554 coridoor B, Hus-B, phone , dake.liu@liu.se
Design of Embedded DSP Processors
Design of Embedded DSP Processors Unit 3: Microarchitecture, Register file, and ALU 9/11/2017 Unit 3 of TSEA26-2017 H1 1 Contents 1. Microarchitecture and its design 2. Hardware design fundamentals 3.
More informationDesign of Embedded DSP Processors Unit 5: Data access. 9/11/2017 Unit 5 of TSEA H1 1
Design of Embedded DSP Processors Unit 5: Data access 9/11/2017 Unit 5 of TSEA26-2017 H1 1 Data memory in a Processor Store Data FIFO supporting DSP executions Computing buffer Parameter storage Access
More informationDesign of Embedded DSP Processors Unit 2: Design basics. 9/11/2017 Unit 2 of TSEA H1 1
Design of Embedded DSP Processors Unit 2: Design basics 9/11/2017 Unit 2 of TSEA26-2017 H1 1 ASIP/ASIC design flow We need to have the flow in mind, so that we will know what we are talking about in later
More informationDesign of Embedded DSP Processors Unit 7: Programming toolchain. 9/26/2017 Unit 7 of TSEA H1 1
Design of Embedded DSP Processors Unit 7: Programming toolchain 9/26/2017 Unit 7 of TSEA26 2017 H1 1 Toolchain introduction There are two kinds of tools 1.The ASIP design tool for HW designers Frontend
More informationTSEA 26 exam page 1 of Examination. Design of Embedded DSP Processors, TSEA26 Date 8-12, G34, G32, FOI hus G
TSEA 26 exam page 1 of 10 20171019 Examination Design of Embedded DSP Processors, TSEA26 Date 8-12, 2017-10-19 Room G34, G32, FOI hus G Time 08-12AM Course code TSEA26 Exam code TEN1 Design of Embedded
More information08 - Address Generator Unit (AGU)
October 2, 2014 Todays lecture Memory subsystem Address Generator Unit (AGU) Schedule change A new lecture has been entered into the schedule (to compensate for the lost lecture last week) Memory subsystem
More information05 - Microarchitecture, RF and ALU
September 15, 2015 Microarchitecture Design Step 1: Partition each assembly instruction into microoperations, allocate each microoperation into corresponding hardware modules. Step 2: Collect all microoperations
More informationDesign of Embedded DSP Processors Unit 8: Firmware design and benchmarking. 9/27/2017 Unit 8 of TSEA H1 1
Design of Embedded DSP Processors Unit 8: Firmware design and benchmarking 9/27/2017 Unit 8 of TSEA26 2017 H1 1 Contents Introduction to FW and its coding flow 1. Application modeling under HW constraints
More informationSoftware Defined Modem A commercial platform for wireless handsets
Software Defined Modem A commercial platform for wireless handsets Charles F Sturman VP Marketing June 22 nd ~ 24 th Brussels charles.stuman@cognovo.com www.cognovo.com Agenda SDM Separating hardware from
More information04 - DSP Architecture and Microarchitecture
September 11, 2014 Conclusions - Instruction set design An assembly language instruction set must be more efficient than Junior Accelerations shall be implemented at arithmetic and algorithmic levels.
More informationThe Nios II Family of Configurable Soft-core Processors
The Nios II Family of Configurable Soft-core Processors James Ball August 16, 2005 2005 Altera Corporation Agenda Nios II Introduction Configuring your CPU FPGA vs. ASIC CPU Design Instruction Set Architecture
More informationDesign and Implementation of Single Issue DSP Processor Core. Vinodh Ravinath
Design and Implementation of Single Issue DSP Processor Core Examensarbete utfört i Datirteknik Vid Tekniska högskolan i Linköping av Vinodh Ravinath LiTH-ISY-EX--07/4094--SE Linköping 2007 Design and
More information1. Choose a module that you wish to implement. The modules are described in Section 2.4.
Chapter 2 Lab 2 - Datapath 2.1 Overview During lab 2 you will complete the RTL code of the ALU and MAC datapaths of the DSP core and write a set of small test programs to verify your implementation. Most
More informationMulti-core microcontroller design with Cortex-M processors and CoreSight SoC
Multi-core microcontroller design with Cortex-M processors and CoreSight SoC Joseph Yiu, ARM Ian Johnson, ARM January 2013 Abstract: While the majority of Cortex -M processor-based microcontrollers are
More informationModeling Performance Use Cases with Traffic Profiles Over ARM AMBA Interfaces
Modeling Performance Use Cases with Traffic Profiles Over ARM AMBA Interfaces Li Chen, Staff AE Cadence China Agenda Performance Challenges Current Approaches Traffic Profiles Intro Traffic Profiles Implementation
More informationTwo HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design
Two HDLs used today Introduction to Structured VLSI Design VHDL I VHDL and Verilog Syntax and ``appearance'' of the two languages are very different Capabilities and scopes are quite similar Both are industrial
More informationBibliography. Measuring Software Reuse, Jeffrey S. Poulin, Addison-Wesley, Practical Software Reuse, Donald J. Reifer, Wiley, 1997.
Bibliography Books on software reuse: 1. 2. Measuring Software Reuse, Jeffrey S. Poulin, Addison-Wesley, 1997. Practical Software Reuse, Donald J. Reifer, Wiley, 1997. Formal specification and verification:
More information04 - DSP Architecture and Microarchitecture
September 11, 2015 Memory indirect addressing (continued from last lecture) ; Reality check: Data hazards! ; Assembler code v3: repeat 256,endloop load r0,dm1[dm0[ptr0++]] store DM0[ptr1++],r0 endloop:
More informationTest and Verification Solutions. ARM Based SOC Design and Verification
Test and Verification Solutions ARM Based SOC Design and Verification 7 July 2008 1 7 July 2008 14 March 2 Agenda System Verification Challenges ARM SoC DV Methodology ARM SoC Test bench Construction Conclusion
More informationModel-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany
Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany 2013 The MathWorks, Inc. 1 Agenda Model-Based Design of embedded Systems Software Implementation
More informationComputers and Microprocessors. Lecture 34 PHYS3360/AEP3630
Computers and Microprocessors Lecture 34 PHYS3360/AEP3630 1 Contents Computer architecture / experiment control Microprocessor organization Basic computer components Memory modes for x86 series of microprocessors
More informationVHDL. VHDL History. Why VHDL? Introduction to Structured VLSI Design. Very High Speed Integrated Circuit (VHSIC) Hardware Description Language
VHDL Introduction to Structured VLSI Design VHDL I Very High Speed Integrated Circuit (VHSIC) Hardware Description Language Joachim Rodrigues A Technology Independent, Standard Hardware description Language
More informationFPGA design with National Instuments
FPGA design with National Instuments Rémi DA SILVA Systems Engineer - Embedded and Data Acquisition Systems - MED Region ni.com The NI Approach to Flexible Hardware Processor Real-time OS Application software
More informationToday. 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 informationThe Challenges of System Design. Raising Performance and Reducing Power Consumption
The Challenges of System Design Raising Performance and Reducing Power Consumption 1 Agenda The key challenges Visibility for software optimisation Efficiency for improved PPA 2 Product Challenge - Software
More informationVHDL for Synthesis. Course Description. Course Duration. Goals
VHDL for Synthesis Course Description This course provides all necessary theoretical and practical know how to write an efficient synthesizable HDL code through VHDL standard language. The course goes
More informationCSE 141 Computer Architecture Summer Session Lecture 3 ALU Part 2 Single Cycle CPU Part 1. Pramod V. Argade
CSE 141 Computer Architecture Summer Session 1 2004 Lecture 3 ALU Part 2 Single Cycle CPU Part 1 Pramod V. Argade Reading Assignment Announcements Chapter 5: The Processor: Datapath and Control, Sec. 5.3-5.4
More informationEffective System Design with ARM System IP
Effective System Design with ARM System IP Mentor Technical Forum 2009 Serge Poublan Product Marketing Manager ARM 1 Higher level of integration WiFi Platform OS Graphic 13 days standby Bluetooth MP3 Camera
More informationGeneral Purpose Signal Processors
General Purpose Signal Processors First announced in 1978 (AMD) for peripheral computation such as in printers, matured in early 80 s (TMS320 series). General purpose vs. dedicated architectures: Pros:
More informationECE 471 Embedded Systems Lecture 2
ECE 471 Embedded Systems Lecture 2 Vince Weaver http://www.eece.maine.edu/~vweaver vincent.weaver@maine.edu 3 September 2015 Announcements HW#1 will be posted today, due next Thursday. I will send out
More informationARM Processors for Embedded Applications
ARM Processors for Embedded Applications Roadmap for ARM Processors ARM Architecture Basics ARM Families AMBA Architecture 1 Current ARM Core Families ARM7: Hard cores and Soft cores Cache with MPU or
More informationAssembling and Debugging VPs of Complex Cycle Accurate Multicore Systems. July 2009
Assembling and Debugging VPs of Complex Cycle Accurate Multicore Systems July 2009 Model Requirements in a Virtual Platform Control initialization, breakpoints, etc Visibility PV registers, memories, profiling
More informationThe Use Of Virtual Platforms In MP-SoC Design. Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006
The Use Of Virtual Platforms In MP-SoC Design Eshel Haritan, VP Engineering CoWare Inc. MPSoC 2006 1 MPSoC Is MP SoC design happening? Why? Consumer Electronics Complexity Cost of ASIC Increased SW Content
More informationAdvanced Parallel Architecture Lesson 3. Annalisa Massini /2015
Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html
More informationDoes FPGA-based prototyping really have to be this difficult?
Does FPGA-based prototyping really have to be this difficult? Embedded Conference Finland Andrew Marshall May 2017 What is FPGA-Based Prototyping? Primary platform for pre-silicon software development
More informationNext Generation Verification Process for Automotive and Mobile Designs with MIPI CSI-2 SM Interface
Thierry Berdah, Yafit Snir Next Generation Verification Process for Automotive and Mobile Designs with MIPI CSI-2 SM Interface Agenda Typical Verification Challenges of MIPI CSI-2 SM designs IP, Sub System
More informationSYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS
SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS Embedded System System Set of components needed to perform a function Hardware + software +. Embedded Main function not computing Usually not autonomous
More informationLecture 5: Computing Platforms. Asbjørn Djupdal ARM Norway, IDI NTNU 2013 TDT
1 Lecture 5: Computing Platforms Asbjørn Djupdal ARM Norway, IDI NTNU 2013 2 Lecture overview Bus based systems Timing diagrams Bus protocols Various busses Basic I/O devices RAM Custom logic FPGA Debug
More informationThe SOCks Design Platform. Johannes Grad
The SOCks Design Platform Johannes Grad System-on-Chip (SoC) Design Combines all elements of a computer onto a single chip Microprocessor Memory Address- and Databus Periphery Application specific logic
More informationValidation Strategies with pre-silicon platforms
Validation Strategies with pre-silicon platforms Shantanu Ganguly Synopsys Inc April 10 2014 2014 Synopsys. All rights reserved. 1 Agenda Market Trends Emulation HW Considerations Emulation Scenarios Debug
More informationVeloce2 the Enterprise Verification Platform. Simon Chen Emulation Business Development Director Mentor Graphics
Veloce2 the Enterprise Verification Platform Simon Chen Emulation Business Development Director Mentor Graphics Agenda Emulation Use Modes Veloce Overview ARM case study Conclusion 2 Veloce Emulation Use
More informationExamination Design of Embedded DSP Processors, TSEA26
Examination Design of Embedded DSP Processors, TSEA26 Date 2011-01-12 Room TER4 Time 14:00-18:00 Course code TSEA26 Exam code TEN 1 Course name Design of Embedded DSP Processors Department ISY, Department
More informationIn our case Dr. Johnson is setting the best practices
VHDL Best Practices Best Practices??? Best practices are often defined by company, toolset or device In our case Dr. Johnson is setting the best practices These rules are for Class/Lab purposes. Industry
More information14.1 Control Path in General
AGU PC FSM Configuration and status Program address Instruction Instruction decoder DM Operand & result control Exec unit ALU/MAC Results RF Control Path Design Hardware organization and micro architecture
More informationStorage I/O Summary. Lecture 16: Multimedia and DSP Architectures
Storage I/O Summary Storage devices Storage I/O Performance Measures» Throughput» Response time I/O Benchmarks» Scaling to track technological change» Throughput with restricted response time is normal
More informationRM3 - Cortex-M4 / Cortex-M4F implementation
Formation Cortex-M4 / Cortex-M4F implementation: This course covers both Cortex-M4 and Cortex-M4F (with FPU) ARM core - Processeurs ARM: ARM Cores RM3 - Cortex-M4 / Cortex-M4F implementation This course
More informationYafit Snir Arindam Guha Cadence Design Systems, Inc. Accelerating System level Verification of SOC Designs with MIPI Interfaces
Yafit Snir Arindam Guha, Inc. Accelerating System level Verification of SOC Designs with MIPI Interfaces Agenda Overview: MIPI Verification approaches and challenges Acceleration methodology overview and
More informationThe CoreConnect Bus Architecture
The CoreConnect Bus Architecture Recent advances in silicon densities now allow for the integration of numerous functions onto a single silicon chip. With this increased density, peripherals formerly attached
More informationCopyright 2016 Xilinx
Zynq Architecture Zynq Vivado 2015.4 Version This material exempt per Department of Commerce license exception TSU Objectives After completing this module, you will be able to: Identify the basic building
More information1. Micro Architecture and Finite Length. Olle Seger Andreas Ehliar Dake Liu, Rizwan Azhgar
1. Micro Architecture and Finite Length Olle Seger (olle.seger@liu.se) Andreas Ehliar (ehliar@isy.liu.se) Dake Liu, Rizwan Azhgar 1 Outline Introduction Some Administrative Information Basic Components
More informationESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)
ESE Back End 2.0 D. Gajski, S. Abdi (with contributions from H. Cho, D. Shin, A. Gerstlauer) Center for Embedded Computer Systems University of California, Irvine http://www.cecs.uci.edu 1 Technology advantages
More informationSIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road QUESTION BANK (DESCRIPTIVE) UNIT-I
SIDDHARTH GROUP OF INSTITUTIONS :: PUTTUR Siddharth Nagar, Narayanavanam Road 517583 QUESTION BANK (DESCRIPTIVE) Subject with Code : CO (16MC802) Year & Sem: I-MCA & I-Sem Course & Branch: MCA Regulation:
More informationHardware Software Bring-Up Solutions for ARM v7/v8-based Designs. August 2015
Hardware Software Bring-Up Solutions for ARM v7/v8-based Designs August 2015 SPMI USB 2.0 SLIMbus RFFE LPDDR 2 LPDDR 3 emmc 4.5 UFS SD 3.0 SD 4.0 UFS Bare Metal Software DSP Software Bare Metal Software
More informationPlatform-based Design
Platform-based Design The New System Design Paradigm IEEE1394 Software Content CPU Core DSP Core Glue Logic Memory Hardware BlueTooth I/O Block-Based Design Memory Orthogonalization of concerns: the separation
More informationVLIW DSP Processor Design for Mobile Communication Applications. Contents crafted by Dr. Christian Panis Catena Radio Design
VLIW DSP Processor Design for Mobile Communication Applications Contents crafted by Dr. Christian Panis Catena Radio Design Agenda Trends in mobile communication Architectural core features with significant
More informationGeneral Purpose Processors
Calcolatori Elettronici e Sistemi Operativi Specifications Device that executes a program General Purpose Processors Program list of instructions Instructions are stored in an external memory Stored program
More informationQsys and IP Core Integration
Qsys and IP Core Integration Stephen A. Edwards (after David Lariviere) Columbia University Spring 2016 IP Cores Altera s IP Core Integration Tools Connecting IP Cores IP Cores Cyclone V SoC: A Mix of
More informationFPGA for Software Engineers
FPGA for Software Engineers Course Description This course closes the gap between hardware and software engineers by providing the software engineer all the necessary FPGA concepts and terms. The course
More informationSoftware Driven Verification at SoC Level. Perspec System Verifier Overview
Software Driven Verification at SoC Level Perspec System Verifier Overview June 2015 IP to SoC hardware/software integration and verification flows Cadence methodology and focus Applications (Basic to
More informationV8-uRISC 8-bit RISC Microprocessor AllianceCORE Facts Core Specifics VAutomation, Inc. Supported Devices/Resources Remaining I/O CLBs
V8-uRISC 8-bit RISC Microprocessor February 8, 1998 Product Specification VAutomation, Inc. 20 Trafalgar Square Nashua, NH 03063 Phone: +1 603-882-2282 Fax: +1 603-882-1587 E-mail: sales@vautomation.com
More informationHardware/Software Co-design
Hardware/Software Co-design Zebo Peng, Department of Computer and Information Science (IDA) Linköping University Course page: http://www.ida.liu.se/~petel/codesign/ 1 of 52 Lecture 1/2: Outline : an Introduction
More informationPart 2: Principles for a System-Level Design Methodology
Part 2: Principles for a System-Level Design Methodology Separation of Concerns: Function versus Architecture Platform-based Design 1 Design Effort vs. System Design Value Function Level of Abstraction
More informationDigital Signal Processor Core Technology
The World Leader in High Performance Signal Processing Solutions Digital Signal Processor Core Technology Abhijit Giri Satya Simha November 4th 2009 Outline Introduction to SHARC DSP ADSP21469 ADSP2146x
More informationLow-Power Processor Solutions for Always-on Devices
Low-Power Processor Solutions for Always-on Devices Pieter van der Wolf MPSoC 2014 July 7 11, 2014 2014 Synopsys, Inc. All rights reserved. 1 Always-on Mobile Devices Mobile devices on the move Mobile
More informationVLSI Signal Processing
VLSI Signal Processing Programmable DSP Architectures Chih-Wei Liu VLSI Signal Processing Lab Department of Electronics Engineering National Chiao Tung University Outline DSP Arithmetic Stream Interface
More informationNS115 System Emulation Based on Cadence Palladium XP
NS115 System Emulation Based on Cadence Palladium XP wangpeng 新岸线 NUFRONT Agenda Background and Challenges Porting ASIC to Palladium XP Software Environment Co Verification and Power Analysis Summary Background
More informationLode DSP Core. Features. Overview
Features Two multiplier accumulator units Single cycle 16 x 16-bit signed and unsigned multiply - accumulate 40-bit arithmetic logical unit (ALU) Four 40-bit accumulators (32-bit + 8 guard bits) Pre-shifter,
More informationPlace Your Logo Here. K. Charles Janac
Place Your Logo Here K. Charles Janac President and CEO Arteris is the Leading Network on Chip IP Provider Multiple Traffic Classes Low Low cost cost Control Control CPU DSP DMA Multiple Interconnect Types
More informationFujitsu System Applications Support. Fujitsu Microelectronics America, Inc. 02/02
Fujitsu System Applications Support 1 Overview System Applications Support SOC Application Development Lab Multimedia VoIP Wireless Bluetooth Processors, DSP and Peripherals ARM Reference Platform 2 SOC
More informationAdding C Programmability to Data Path Design
Adding C Programmability to Data Path Design Gert Goossens Sr. Director R&D, Synopsys May 6, 2015 1 Smart Products Drive SoC Developments Feature-Rich Multi-Sensing Multi-Output Wirelessly Connected Always-On
More informationImplementing Flexible Interconnect Topologies for Machine Learning Acceleration
Implementing Flexible Interconnect for Machine Learning Acceleration A R M T E C H S Y M P O S I A O C T 2 0 1 8 WILLIAM TSENG Mem Controller 20 mm Mem Controller Machine Learning / AI SoC New Challenges
More informationAdvanced Synthesis Techniques
Advanced Synthesis Techniques Reminder From Last Year Use UltraFast Design Methodology for Vivado www.xilinx.com/ultrafast Recommendations for Rapid Closure HDL: use HDL Language Templates & DRC Constraints:
More information100M Gate Designs in FPGAs
100M Gate Designs in FPGAs Fact or Fiction? NMI FPGA Network 11 th October 2016 Jonathan Meadowcroft, Cadence Design Systems Why in the world, would I do that? ASIC replacement? Probably not! Cost prohibitive
More informationSystemC abstractions and design refinement for HW- SW SoC design. Dündar Dumlugöl. Vice President of Engineering, CoWare, Inc.
SystemC abstractions and design refinement for HW- SW SoC design Dündar Dumlugöl Vice President of Engineering, CoWare, Inc. Overview SystemC abstraction levels & design flow Interface Synthesis Analyzing
More informationECE 471 Embedded Systems Lecture 3
ECE 471 Embedded Systems Lecture 3 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 10 September 2018 Announcements New classroom: Stevens 365 HW#1 was posted, due Friday Reminder:
More informationDesign of Transport Triggered Architecture Processor for Discrete Cosine Transform
Design of Transport Triggered Architecture Processor for Discrete Cosine Transform by J. Heikkinen, J. Sertamo, T. Rautiainen,and J. Takala Presented by Aki Happonen Table of Content Introduction Transport
More informationSystem On Chip: Design & Modelling (SOC/DAM) 1 R: Verilog RTL Design with examples.
System On Chip: Design & Modelling (SOC/DAM) Exercises Here is the first set of exercises. These are intended to cover subject groups 1-4 of the SOC/DAM syllabus (R, SC, SD, ESL). These questions are styled
More informationEmbedded HW/SW Co-Development
Embedded HW/SW Co-Development It May be Driven by the Hardware Stupid! Frank Schirrmeister EDPS 2013 Monterey April 18th SPMI USB 2.0 SLIMbus RFFE LPDDR 2 LPDDR 3 emmc 4.5 UFS SD 3.0 SD 4.0 UFS Bare Metal
More informationLinköping University Post Print. epuma: a novel embedded parallel DSP platform for predictable computing
Linköping University Post Print epuma: a novel embedded parallel DSP platform for predictable computing Jian Wang, Joar Sohl, Olof Kraigher and Dake Liu N.B.: When citing this work, cite the original article.
More informationARM Cortex-A9 ARM v7-a. A programmer s perspective Part1
ARM Cortex-A9 ARM v7-a A programmer s perspective Part1 ARM: Advanced RISC Machine First appeared in 1985 as Acorn RISC Machine from Acorn Computers in Manchester England Limited success outcompeted by
More informationFujitsu SOC Fujitsu Microelectronics America, Inc.
Fujitsu SOC 1 Overview Fujitsu SOC The Fujitsu Advantage Fujitsu Solution Platform IPWare Library Example of SOC Engagement Model Methodology and Tools 2 SDRAM Raptor AHB IP Controller Flas h DM A Controller
More informationECE232: Hardware Organization and Design
ECE232: Hardware Organization and Design Lecture 4: MIPS Instructions Adapted from Computer Organization and Design, Patterson & Hennessy, UCB From Last Time Two values enter from the left (A and B) Need
More informationEEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools
EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools Wen-Yen Lin, Ph.D. Department of Electrical Engineering Chang Gung University Email: wylin@mail.cgu.edu.tw March 2013 Agenda Introduction
More informationEmbedded Systems. 7. System Components
Embedded Systems 7. System Components Lothar Thiele 7-1 Contents of Course 1. Embedded Systems Introduction 2. Software Introduction 7. System Components 10. Models 3. Real-Time Models 4. Periodic/Aperiodic
More informationContents Part I Basic Concepts The Nature of Hardware and Software Data Flow Modeling and Transformation
Contents Part I Basic Concepts 1 The Nature of Hardware and Software... 3 1.1 Introducing Hardware/Software Codesign... 3 1.1.1 Hardware... 3 1.1.2 Software... 5 1.1.3 Hardware and Software... 7 1.1.4
More informationA framework for verification of Program Control Unit of VLIW processors
A framework for verification of Program Control Unit of VLIW processors Santhosh Billava, Saankhya Labs, Bangalore, India (santoshb@saankhyalabs.com) Sharangdhar M Honwadkar, Saankhya Labs, Bangalore,
More informationAsynchronous on-chip Communication: Explorations on the Intel PXA27x Peripheral Bus
Asynchronous on-chip Communication: Explorations on the Intel PXA27x Peripheral Bus Andrew M. Scott, Mark E. Schuelein, Marly Roncken, Jin-Jer Hwan John Bainbridge, John R. Mawer, David L. Jackson, Andrew
More informationOverview of SOC Architecture design
Computer Architectures Overview of SOC Architecture design Tien-Fu Chen National Chung Cheng Univ. SOC - 0 SOC design Issues SOC architecture Reconfigurable System-level Programmable processors Low-level
More informationA 50Mvertices/s Graphics Processor with Fixed-Point Programmable Vertex Shader for Mobile Applications
A 50Mvertices/s Graphics Processor with Fixed-Point Programmable Vertex Shader for Mobile Applications Ju-Ho Sohn, Jeong-Ho Woo, Min-Wuk Lee, Hye-Jung Kim, Ramchan Woo, Hoi-Jun Yoo Semiconductor System
More informationDSP Platforms Lab (AD-SHARC) Session 05
University of Miami - Frost School of Music DSP Platforms Lab (AD-SHARC) Session 05 Description This session will be dedicated to give an introduction to the hardware architecture and assembly programming
More informationEECS Components and Design Techniques for Digital Systems. Lec 20 RTL Design Optimization 11/6/2007
EECS 5 - Components and Design Techniques for Digital Systems Lec 2 RTL Design Optimization /6/27 Shauki Elassaad Electrical Engineering and Computer Sciences University of California, Berkeley Slides
More informationECE332, Week 2, Lecture 3. September 5, 2007
ECE332, Week 2, Lecture 3 September 5, 2007 1 Topics Introduction to embedded system Design metrics Definitions of general-purpose, single-purpose, and application-specific processors Introduction to Nios
More informationECE332, Week 2, Lecture 3
ECE332, Week 2, Lecture 3 September 5, 2007 1 Topics Introduction to embedded system Design metrics Definitions of general-purpose, single-purpose, and application-specific processors Introduction to Nios
More informationCSE 141L Computer Architecture Lab Fall Lecture 3
CSE 141L Computer Architecture Lab Fall 2005 Lecture 3 Pramod V. Argade November 1, 2005 Fall 2005 CSE 141L Course Schedule Lecture # Date Day Lecture Topic Lab Due 1 9/27 Tuesday No Class 2 10/4 Tuesday
More informationAdvanced Parallel Architecture Lesson 3. Annalisa Massini /2015
Advanced Parallel Architecture Lesson 3 Annalisa Massini - 2014/2015 Von Neumann Architecture 2 Summary of the traditional computer architecture: Von Neumann architecture http://williamstallings.com/coa/coa7e.html
More informationIP CORE Design 矽智產設計. C. W. Jen 任建葳.
IP CORE Design 矽智產設計 C. W. Jen 任建葳 cwjen@twins.ee.nctu.edu.tw Course Contents Introduction to SoC and IP ARM processor core and instruction sets VCI interface, on-chip bus, and platform-based design IP
More informationXilinx Vivado/SDK Tutorial
Xilinx Vivado/SDK Tutorial (Laboratory Session 1, EDAN15) Flavius.Gruian@cs.lth.se March 21, 2017 This tutorial shows you how to create and run a simple MicroBlaze-based system on a Digilent Nexys-4 prototyping
More informationTKT-1212 Digitaalijärjestelmien toteutus. Lecture 7: VHDL Testbenches Ari Kulmala, Erno Salminen 2008
TKT-1212 Digitaalijärjestelmien toteutus Lecture 7: VHDL Testbenches Ari Kulmala, Erno Salminen 2008 Contents Purpose of test benches Structure of simple test bench Side note about delay modeling in VHDL
More information17.1. Unit 17. Instruction Sets Picoblaze Processor
17.1 Unit 17 Instruction Sets Picoblaze Processor INSTRUCTION SET OVERVIEW 17.2 17.3 Instruction Set Review Defines the software interface of the processor and memory system Instruction set is the vocabulary
More informationProcessing Unit CS206T
Processing Unit CS206T Microprocessors The density of elements on processor chips continued to rise More and more elements were placed on each chip so that fewer and fewer chips were needed to construct
More information