资料介绍
Copyright
Prentice Hall Modern Semiconductor Design Series
Foreword
Why is this book of interest to the hardware folks?
And what about the software guys and gals?
So what's the catch?
Preface
C Language for FPGA-Based Hardware Design?
Compelling Platforms for Software Acceleration
The Power to Experiment
How This Book Is Organized
Where This Book Came From
Acknowledgments
Chapter 1. The FPGA as a Computing Platform
Section 1.1. A Quick Introduction to FPGAs
Section 1.2. FPGA-Based Programmable Hardware Platforms
Section 1.3. Increasing Performance While Lowering Costs
Section 1.4. The Role of Tools
Section 1.5. The FPGA as an Embedded Software Platform
Section 1.6. The Importance of a Programming Abstraction
Section 1.7. When Is C Language Appropriate for FPGA Design?
Section 1.8. How to Use This Book
Chapter 2. A Brief History of Programmable Platforms
Section 2.1. The Origins of Programmable Logic
Section 2.2. Reprogrammability, HDLs, and the Rise of the FPGA
Section 2.3. Systems on a Programmable Chip
Section 2.4. FPGAs for Parallel Computing
Section 2.5. Summary
Chapter 3. A Programming Model for FPGA-Based Applications
Section 3.1. Parallel Processing Models
Section 3.2. FPGAs as Parallel Computing Machines
Section 3.3. Programming for Parallelism
Section 3.4. Communicating Process Programming Models
Section 3.5. The Impulse C Programming Model
Section 3.6. Summary
Chapter 4. An Introduction to Impulse C
Section 4.1. The Motivation Behind Impulse C
Section 4.2. The Impulse C Programming Model
Section 4.3. A Minimal Impulse C Program
Section 4.4. Processes Streams Signals, and Memory
Section 4.5. Impulse C Signed and Unsigned Datatypes
Section 4.6. Understanding Processes
Section 4.7. Understanding Streams
Section 4.8. Using Output Streams
Section 4.9. Using Input Streams
Section 4.10. Avoiding Stream Deadlocks
Section 4.11. Creading and Using Signals
Section 4.12. Understanting Registers
Section 4.13. Using Shared Memories
Section 4.14. Memory and Stream Performance Considerations
Section 4.15. Summary
Chapter 5. Describing a FIR Filter
Section 5.1. Design Overview
Section 5.2. The FIR Filter Hardware Process
Section 5.3. The Software Test Bench
Section 5.4. Desktop Simulation
Section 5.5. Application Monitoring
Section 5.6. Summary
Chapter 6. Generating FPGA Hardware
Section 6.1. The Hardware Generation Flow
Section 6.2. Understanding the Generated Structure
Section 6.3. Stream and Signal Interfaces
Section 6.4. Using HDL Simulation to Understand Stream Protocols
Section 6.5. Debugging the Generated Hardware
Section 6.6. Hardware Generation Notes
Section 6.7. Making Efficient Use of the Optimizers
Section 6.8. Language Constraints for Hardware Processes
Section 6.9. Summary
Chapter 7. Increasing Statement-Level Parallelism
Section 7.1. A Model of FPGA Computation
Section 7.2. C Language Semantics and Parallelism
Section 7.3. Exploiting Instruction-Level Parallelism
Section 7.4. Limiting Instruction Stages
Section 7.5. Unrolling Loops
Section 7.6. Pipelining Explained
Section 7.7. Summary
Chapter 8. Porting a Legacy Application to Impulse C
Section 8.1. The Triple-DES Algorithm
Section 8.2. Converting the Algorithm to a Streaming Model
Section 8.3. Performing Software Simulation
Section 8.4. Compiling To Hardware
Section 8.5. Preliminary Hardware Analysis
Section 8.6. Summary
Chapter 9. Creating an Embedded Test Bench
Section 9.1. A Mixed Hardware and Software Approach
Section 9.2. The Embedded Processor as a Test Generator
Section 9.3. The Role of Hardware Simulators
Section 9.4. Testing the Triple-DES Algorithm in Hardware
Section 9.5. Software Stream Macro Interfaces
Section 9.6. Building the Test System
Section 9.7. Summary
Chapter 10. Optimizing C for FPGA Performance
Section 10.1. Rethinking an Algorithm for Performance
Section 10.2. Refinement 1: Reducing Size by Introducing a Loop
Section 10.3. Refinement 2: Array Splitting
Section 10.4. Refinement 3: Improving Streaming Performance
Section 10.5. Refinement 4: Loop Unrolling
Section 10.6. Refinement 5: Pipelining the Main Loop
Section 10.7. Summary
Chapter 11. Describing System-Level Parallelism
Section 11.1. Design Overview
Section 11.2. Performing Desktop Simulation
Section 11.3. Refinement 1: Creating Parallel 8-Bit Filters
Section 11.4. Refinement 2: Creating a System-Level Pipeline
Section 11.5. Moving the Application to Hardware
Section 11.6. Summary
Chapter 12. Combining Impulse C with an Embedded Operating System
Section 12.1. The uClinux Operating System
Section 12.2. A uClinux Demonstration Project
Section 12.3. Summary
Chapter 13. Mandelbrot Image Generation
Section 13.1. Design Overview
Section 13.2. Expressing the Algorithm in C
Section 13.3. Creating a Fixed-Point Equivalent
Section 13.4. Creating a Streaming Version
Section 13.5. Parallelizing the Algorithm
Section 13.6. Future Refinements
Section 13.7. Summary
Chapter 14. The Future of FPGA Computing
Section 14.1. The FPGA as a High-Performance Computer
Section 14.2. The Future of FPGA Computing
Section 14.3. Summary
Appendix A. Getting the Most Out of Embedded FPGA Processors
Section A.1. FPGA Embedded Processor Overview
Section A.2. Peripherals and Memory Controllers
Section A.3. Increasing Processor Performance
Section A.4. Optimization Techniques That Are Not FPGA-Specific
Section A.5. FPGA-Specific Optimization Techniques
Section A.6. Summary
Appendix B. Creating a Custom Stream Interface
Section B.1. Application Overview
Section B.2. The DS92LV16 Serial Link for Data Streaming
Section B.3. Stream Interface State Machine Description
Section B.4. Data Transmission
Section B.5. Summary
Appendix C. Impulse C Function Reference
CO_ARCHITECTURE_CREATE
CO_BIT_EXTRACT
CO_BIT_EXTRACT_U
CO_BIT_INSERT
CO_BIT_INSERT_U
CO_EXECUTE
CO_INITIALIZE
CO_MEMORY_CREATE
CO_MEMORY_PTR
CO_MEMORY_READBLOCK
CO_MEMORY_WRITEBLOCK
CO_PAR_BREAK
CO_PROCESS_CONFIG
CO_PROCESS_CREATE
CO_REGISTER_CREATE
CO_REGISTER_GET
CO_REGISTER_PUT
CO_REGISTER_READ
CO_REGISTER_WRITE
CO_SIGNAL_CREATE
CO_SIGNAL_POST
CO_SIGNAL_WAIT
CO_STREAM_CLOSE
CO_STREAM_CREATE
CO_STREAM_EOS
CO_STREAM_OPEN
CO_STREAM_READ
CO_STREAM_READ_NB
CO_STREAM_WRITE
COSIM_LOGWINDOW_CREATE
COSIM_LOGWINDOW_FWRITE
COSIM_LOGWINDOW_INIT
COSIM_LOGWINDOW_WRITE
Appendix D. Triple-DES Source Listings
DES_HW.C
DES.C
DES_SW.C
DES.H
Appendix E. Image Filter Listings
IMG_HW.C
IMG_SW.C
IMG.H
Appendix F. Selected References
Index
Prentice Hall Modern Semiconductor Design Series
Foreword
Why is this book of interest to the hardware folks?
And what about the software guys and gals?
So what's the catch?
Preface
C Language for FPGA-Based Hardware Design?
Compelling Platforms for Software Acceleration
The Power to Experiment
How This Book Is Organized
Where This Book Came From
Acknowledgments
Chapter 1. The FPGA as a Computing Platform
Section 1.1. A Quick Introduction to FPGAs
Section 1.2. FPGA-Based Programmable Hardware Platforms
Section 1.3. Increasing Performance While Lowering Costs
Section 1.4. The Role of Tools
Section 1.5. The FPGA as an Embedded Software Platform
Section 1.6. The Importance of a Programming Abstraction
Section 1.7. When Is C Language Appropriate for FPGA Design?
Section 1.8. How to Use This Book
Chapter 2. A Brief History of Programmable Platforms
Section 2.1. The Origins of Programmable Logic
Section 2.2. Reprogrammability, HDLs, and the Rise of the FPGA
Section 2.3. Systems on a Programmable Chip
Section 2.4. FPGAs for Parallel Computing
Section 2.5. Summary
Chapter 3. A Programming Model for FPGA-Based Applications
Section 3.1. Parallel Processing Models
Section 3.2. FPGAs as Parallel Computing Machines
Section 3.3. Programming for Parallelism
Section 3.4. Communicating Process Programming Models
Section 3.5. The Impulse C Programming Model
Section 3.6. Summary
Chapter 4. An Introduction to Impulse C
Section 4.1. The Motivation Behind Impulse C
Section 4.2. The Impulse C Programming Model
Section 4.3. A Minimal Impulse C Program
Section 4.4. Processes Streams Signals, and Memory
Section 4.5. Impulse C Signed and Unsigned Datatypes
Section 4.6. Understanding Processes
Section 4.7. Understanding Streams
Section 4.8. Using Output Streams
Section 4.9. Using Input Streams
Section 4.10. Avoiding Stream Deadlocks
Section 4.11. Creading and Using Signals
Section 4.12. Understanting Registers
Section 4.13. Using Shared Memories
Section 4.14. Memory and Stream Performance Considerations
Section 4.15. Summary
Chapter 5. Describing a FIR Filter
Section 5.1. Design Overview
Section 5.2. The FIR Filter Hardware Process
Section 5.3. The Software Test Bench
Section 5.4. Desktop Simulation
Section 5.5. Application Monitoring
Section 5.6. Summary
Chapter 6. Generating FPGA Hardware
Section 6.1. The Hardware Generation Flow
Section 6.2. Understanding the Generated Structure
Section 6.3. Stream and Signal Interfaces
Section 6.4. Using HDL Simulation to Understand Stream Protocols
Section 6.5. Debugging the Generated Hardware
Section 6.6. Hardware Generation Notes
Section 6.7. Making Efficient Use of the Optimizers
Section 6.8. Language Constraints for Hardware Processes
Section 6.9. Summary
Chapter 7. Increasing Statement-Level Parallelism
Section 7.1. A Model of FPGA Computation
Section 7.2. C Language Semantics and Parallelism
Section 7.3. Exploiting Instruction-Level Parallelism
Section 7.4. Limiting Instruction Stages
Section 7.5. Unrolling Loops
Section 7.6. Pipelining Explained
Section 7.7. Summary
Chapter 8. Porting a Legacy Application to Impulse C
Section 8.1. The Triple-DES Algorithm
Section 8.2. Converting the Algorithm to a Streaming Model
Section 8.3. Performing Software Simulation
Section 8.4. Compiling To Hardware
Section 8.5. Preliminary Hardware Analysis
Section 8.6. Summary
Chapter 9. Creating an Embedded Test Bench
Section 9.1. A Mixed Hardware and Software Approach
Section 9.2. The Embedded Processor as a Test Generator
Section 9.3. The Role of Hardware Simulators
Section 9.4. Testing the Triple-DES Algorithm in Hardware
Section 9.5. Software Stream Macro Interfaces
Section 9.6. Building the Test System
Section 9.7. Summary
Chapter 10. Optimizing C for FPGA Performance
Section 10.1. Rethinking an Algorithm for Performance
Section 10.2. Refinement 1: Reducing Size by Introducing a Loop
Section 10.3. Refinement 2: Array Splitting
Section 10.4. Refinement 3: Improving Streaming Performance
Section 10.5. Refinement 4: Loop Unrolling
Section 10.6. Refinement 5: Pipelining the Main Loop
Section 10.7. Summary
Chapter 11. Describing System-Level Parallelism
Section 11.1. Design Overview
Section 11.2. Performing Desktop Simulation
Section 11.3. Refinement 1: Creating Parallel 8-Bit Filters
Section 11.4. Refinement 2: Creating a System-Level Pipeline
Section 11.5. Moving the Application to Hardware
Section 11.6. Summary
Chapter 12. Combining Impulse C with an Embedded Operating System
Section 12.1. The uClinux Operating System
Section 12.2. A uClinux Demonstration Project
Section 12.3. Summary
Chapter 13. Mandelbrot Image Generation
Section 13.1. Design Overview
Section 13.2. Expressing the Algorithm in C
Section 13.3. Creating a Fixed-Point Equivalent
Section 13.4. Creating a Streaming Version
Section 13.5. Parallelizing the Algorithm
Section 13.6. Future Refinements
Section 13.7. Summary
Chapter 14. The Future of FPGA Computing
Section 14.1. The FPGA as a High-Performance Computer
Section 14.2. The Future of FPGA Computing
Section 14.3. Summary
Appendix A. Getting the Most Out of Embedded FPGA Processors
Section A.1. FPGA Embedded Processor Overview
Section A.2. Peripherals and Memory Controllers
Section A.3. Increasing Processor Performance
Section A.4. Optimization Techniques That Are Not FPGA-Specific
Section A.5. FPGA-Specific Optimization Techniques
Section A.6. Summary
Appendix B. Creating a Custom Stream Interface
Section B.1. Application Overview
Section B.2. The DS92LV16 Serial Link for Data Streaming
Section B.3. Stream Interface State Machine Description
Section B.4. Data Transmission
Section B.5. Summary
Appendix C. Impulse C Function Reference
CO_ARCHITECTURE_CREATE
CO_BIT_EXTRACT
CO_BIT_EXTRACT_U
CO_BIT_INSERT
CO_BIT_INSERT_U
CO_EXECUTE
CO_INITIALIZE
CO_MEMORY_CREATE
CO_MEMORY_PTR
CO_MEMORY_READBLOCK
CO_MEMORY_WRITEBLOCK
CO_PAR_BREAK
CO_PROCESS_CONFIG
CO_PROCESS_CREATE
CO_REGISTER_CREATE
CO_REGISTER_GET
CO_REGISTER_PUT
CO_REGISTER_READ
CO_REGISTER_WRITE
CO_SIGNAL_CREATE
CO_SIGNAL_POST
CO_SIGNAL_WAIT
CO_STREAM_CLOSE
CO_STREAM_CREATE
CO_STREAM_EOS
CO_STREAM_OPEN
CO_STREAM_READ
CO_STREAM_READ_NB
CO_STREAM_WRITE
COSIM_LOGWINDOW_CREATE
COSIM_LOGWINDOW_FWRITE
COSIM_LOGWINDOW_INIT
COSIM_LOGWINDOW_WRITE
Appendix D. Triple-DES Source Listings
DES_HW.C
DES.C
DES_SW.C
DES.H
Appendix E. Image Filter Listings
IMG_HW.C
IMG_SW.C
IMG.H
Appendix F. Selected References
Index
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- FPGA CPLD可编程逻辑器件的在系统配置方法
- 基于FPGA和DSP的机载图形显示系统 36次下载
- 基于FPGA的多图片动态显示VGA系统 27次下载
- 现场可编程门阵列简介 76次下载
- 可编程逻辑阵列fpga和cpld说明 25次下载
- FPGA的基本知识讲解 20次下载
- FPGA面向汽车电子的可编程逻辑解决方案 23次下载
- 使用Quartus II编程CPLD和FPGA设备的教程说明 32次下载
- 如何使用FPGA实现TFT LCD显示驱动电路的设计 34次下载
- 如何使用CPLD与USB接口配合并使用MCU和FPGA与DSP进行编程的设计方法 13次下载
- 粤嵌FPGA编程说明 10次下载
- FPGA编程语言的设计 23次下载
- FPGA开发流程及编程思想 31次下载
- SPI方式FPGA配置和SPI flash编程 164次下载
- EasyFPGA060 编程文件下载上位机软件
- fpga开发需要掌握哪些编程语言 1091次阅读
- fpga三种编程语言 781次阅读
- fpga软件是什么意思 809次阅读
- fpga用什么语言编程 2129次阅读
- fpga编程与单片机编程的区别 718次阅读
- fpga用的是什么编程语言 fpga用什么语言开发 2747次阅读
- fpga芯片用什么编程语言 1273次阅读
- fpga是什么 fpga用什么编程语言 1330次阅读
- FPGA现场可编程门阵列的综合指南 549次阅读
- 如何使用OpenCL轻松实现FPGA应用编程 6322次阅读
- Xilinx FPGA编程技巧常用时序约束介绍 4389次阅读
- LabVIEW可编程FPGA模块对示波器的重要性 4300次阅读
- 基于可编程FPGA在系统级实现诊断 1050次阅读
- 基于SRAM结构FPGA逻辑资源的测试编程 4939次阅读
- 反熔丝FPGA配置和编程方法 1w次阅读
下载排行
本周
- 1电子电路原理第七版PDF电子教材免费下载
- 0.00 MB | 1491次下载 | 免费
- 2单片机典型实例介绍
- 18.19 MB | 95次下载 | 1 积分
- 3S7-200PLC编程实例详细资料
- 1.17 MB | 27次下载 | 1 积分
- 4笔记本电脑主板的元件识别和讲解说明
- 4.28 MB | 18次下载 | 4 积分
- 5开关电源原理及各功能电路详解
- 0.38 MB | 11次下载 | 免费
- 6100W短波放大电路图
- 0.05 MB | 4次下载 | 3 积分
- 7基于单片机和 SG3525的程控开关电源设计
- 0.23 MB | 4次下载 | 免费
- 8基于AT89C2051/4051单片机编程器的实验
- 0.11 MB | 4次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 2PADS 9.0 2009最新版 -下载
- 0.00 MB | 66304次下载 | 免费
- 3protel99下载protel99软件下载(中文版)
- 0.00 MB | 51209次下载 | 免费
- 4LabView 8.0 专业版下载 (3CD完整版)
- 0.00 MB | 51043次下载 | 免费
- 5555集成电路应用800例(新编版)
- 0.00 MB | 33562次下载 | 免费
- 6接口电路图大全
- 未知 | 30320次下载 | 免费
- 7Multisim 10下载Multisim 10 中文版
- 0.00 MB | 28588次下载 | 免费
- 8开关电源设计实例指南
- 未知 | 21539次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935053次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537793次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420026次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234313次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191183次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183277次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138039次下载 | 免费
评论
查看更多