资料介绍
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
下载该资料的人也在下载
下载该资料的人还在阅读
更多 >
- Practical-Programming-on-Android-Introduction
- Practical Manual of Abdominal Organ Transplantatio
- 基于FPGA和DSP的机载图形显示系统 36次下载
- [android.开发书籍].Practical.Android 2次下载
- ISP1581 Programming 13次下载
- PLD Programming Using VHDL 0次下载
- Programming Teridian Meter ICs
- Practical Tips on HSDPA Measur
- Practical Power Application Is
- A PRACTICAL REVIEW OF Common M
- 模拟电路资料(Practical Analog Design
- Practical RF Architectures for
- In-circuit programming of the
- Object-Oriented Programming in
- Some Programming Methods for I
- fpga语言是什么?fpga语言与c语言的区别 723次阅读
- fpga软件是什么意思 809次阅读
- fpga开发板是什么?fpga开发板有哪些? 1458次阅读
- fpga芯片有哪些 847次阅读
- fpga芯片工作原理 fpga芯片有哪些型号 1093次阅读
- fpga是什么 fpga用什么编程语言 1330次阅读
- FPGA是什么?FPGA的工作原理和应用 2614次阅读
- FPGA是什么 2.3w次阅读
- FPGA到底是什么?FPGA有哪些优势 5371次阅读
- 基于FPGA硬件平台的可重构系统调度算法详解 1922次阅读
- fpga应用领域_fpga应用三个主要方向 5.8w次阅读
- 什么是FPGA?FPGA具备哪五大优势? 2.6w次阅读
- FPGA介绍及现状分析_如何学习FPGA? 1.4w次阅读
- 添加FPGA终端的步骤方法 2347次阅读
- FPGA设计小Tips:如何正确使用FPGA的时钟资源 1.9w次阅读
下载排行
本周
- 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次下载 | 免费
评论
查看更多