soc consortium course material asic logic national taiwan university adopted from national...
TRANSCRIPT
SOC Consortium Course Material
ASIC LogicASIC Logic
National Taiwan UniversityAdopted from National Chiao-Tung University
IP Core Design
2SOC Consortium Course Material
Goal of This Lab
PrototypingFamiliarize with ARM Logic Module (LM)Know how to program LM
3SOC Consortium Course Material
Outline
IntroductionARM System OverviewPrototyping with Logic ModuleLab – ASIC Logic
4SOC Consortium Course Material
Introduction
Rapid Prototyping – A fast way to verify your prototype design.– Enables you to discover problems before tape out.– Helps to provide a better understanding of the design’s
behavior.
ARM Integrator and Logic Module can be used for Hardware Design Verification and HW/SW co-verification.– Hardware Design Verification: using LM stand alone.– HW/SW co-verification: using LM, CM, Integrator
together.
5SOC Consortium Course Material
Outline
IntroductionARM System Overview
– ARM Synchronization Scheme: Interrupt– ARM Synchronization Scheme: Polling
Prototyping with Logic ModuleLab – ASIC Logic
6SOC Consortium Course Material
ARM System Overview A typical ARM system consists of an ARM core, a DSP chip f
or application-specific needs, some dedicated hardware accelerator IPs, storages, and some peripherals and controls.
GPIOsInterrupt
Controller
On chip memorycontroller and
memory
ARM920T DSP CHIPMotion
EstimationAccelerator IP
AHB
AHB-to-APBBridge
Direct MemoryAccess (DMA)
Real TimeCounter
Timers LCD ControllerUSB
Controller
Remote KB/Mouse
Controller
APB
ExternalMemory
Controller
ExternalMemory
7SOC Consortium Course Material
ARM System Synchronization Scheme: Interrupt
A device asserts an interrupt signal to request the ARM core handle it.
The ARM core can perform tasks while the device is in use. Needs Interrupt Controller. More hardware.
IP0
Interrupt Controller
ARM CORE
IP1 IP2 IP3IP0, IP1, IP2, and IP3 raised interruptrequest (IRQ) at the same time. TheIRQs are sent to the interrupt controller.
Interrupt controller receives the IRQsand update the IRQ status indicating theIRQ sources.
ARM core receives the IRQs,deteremines which IRQ should behandled according to programmedpriorities. and then executes thecorresponding interrupt service routine(ISR).
IP 0
clear IP0's IRQ
The ISR performs its operations andclears the IP0's interrupt.
8SOC Consortium Course Material
ARM System Synchronization Scheme: Polling
The ARM core keeps checking a register indicating if the device has done its task.
The ARM core is busy “polling” the device while the device is in use.
Less hardware.
ARM CORE
ARM core polls IP0's ready register afterIP0 has been enabled.
Once IP0 is done with its operation,ARM core will know from the changedvalue of the ready register.
ARM core will execute thecorresponding operations and thendisable IP0.
IP 0
Disable IP0Polling IP0
9SOC Consortium Course Material
Outline
IntroductionARM System OverviewPrototyping with Logic Module
– ARM Integrator AP & ARM LM– FPGA tools
Lab – ASIC Logic
10SOC Consortium Course Material
AP Layout
11SOC Consortium Course Material
What is LM
Logic ModuleA platform for developing Advanced
Microcontroller Bus Architecture (AMBA), Advanced System Bus (ASB), Advanced High-performance Bus (AHB), and Advanced Peripheral Bus (APB) peripherals for use with ARM cores.
12SOC Consortium Course Material
It can be used in the following ways:– As a standalone system– With an CM, and a AP motherboard– As a CM with AP motherboard if a synthesized ARM core
is programmed into the FPGA
Using the LM
13SOC Consortium Course Material
LM Architecture
14SOC Consortium Course Material
Components of LMAltera or Xilinx FPGAConfiguration PLD and flash memory for storing
FPGA configurations1MB ZBT SSRAMClock generators and reset sourcesA 4-way flash image selection switch and an 8-way
user definable switch9 user-definable surface-mounted LEDs (8G1R)User-definable push buttonPrototyping gridSystem bus connectors to a motherboard or other
modules
15SOC Consortium Course Material
LM Layout
8-way swtich
4-way swtich
16SOC Consortium Course Material
Links
CONFIG link– Enable configuration mode, which changes the JTAG
signal routing and is used to download new PLD or FPGA configurations.
JTAG, Trace, and logic analyzer connectorsOther links, switches, and small ICs can be added
to the prototyping grid if required.
17SOC Consortium Course Material
FPGA tools
Xilinx GUI Synthesis Tool
18SOC Consortium Course Material
On-board Clock Generators
19SOC Consortium Course Material
Clock Signal Summary
20SOC Consortium Course Material
Programming the LM Clock
1MHz: CTRLCLKx=19'b1100111110000000100 2MHz: CTRLCLKx=19'b1100011110000000100 5MHz: CTRLCLKx=19'b110000111000000011110MHz: CTRLCLKx=19'b1100000110000000111
Constraint:
21SOC Consortium Course Material
AHB Platform
22SOC Consortium Course Material
Files Description Hardware files .\Lab7\Codes\HW\example2\Verilog
– AHBAHBTop.v– AHBDecoder.v– AHBMuxS2M.v– AHBZBTRAM.v– AHB2APB.v– AHBAPBSys.v– APBIntCon.v– APBRegs.v
Software program files .\Lab7\Codes\SW\example2\
– sw.mcp– logic.c – logic.h– platform.h– rw_support.s
For Xilinx synthesis tool to generatelmxcv600e_72c_xcv2000e_via_reva_build0.bit
For codewarrior to generatesw.axf
23SOC Consortium Course Material
Software Description
5 files included in .\Lab7\Codes\SW\example2\
– sw.mcp: project file– logic.c: the main C code– logic.h: constant definitions– platform.h: constant definitions– rw_support.s: assembly functions for SSRAM testing
24SOC Consortium Course Material
Integrator Memory Map
25SOC Consortium Course Material
Work Flow Summary
Run the AXD image with MultiICE
Prepare HDLDesign
Synthesis
Place&RouteFPGA Bitstream
Generation
Prepare SoftwareDesign
Make & BuildAXD ImageGeneration
Downloading theBitstream to LM's
FPGA
26SOC Consortium Course Material
Outline
IntroductionARM System OverviewPrototyping with Logic ModuleLab – ASIC Logic
27SOC Consortium Course Material
Reference
[1] http://twins.ee.nctu.edu.tw/courses/ip_core_02/index.html
[1] LM-XCV2000E.pdf
[2] DUI0098B_AP_UG.pdf
[3] progcards.pdf
28SOC Consortium Course Material
Experiment Requirements
Design an RGB-to-YUV converter that converts R, G, B values to Y, U, V values.
To implement the converter with pour software and write the test program.
To implement the converter into hardware and program it into the FPGA on the LM, evaluate the improvement compared to pure software implementation.