FPGA CPLD资料源码分享
该帖子部分内容已隐藏
付费阅读
10积分
Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . VII Preface to Second Edition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XI Preface to Third Edition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .XIII 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.1 Overview of Digital Signal Processing (DSP) . . . . . . . . . . . . . . . 1 1.2 FPGA Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.2.1 Classification by Granularity . . . . . . . . . . . . . . . . . . . . . . . 3 1.2.2 Classification by Technology . . . . . . . . . . . . . . . . . . . . . . . 6 1.2.3 Benchmark for FPLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 DSP Technology Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.3.1 FPGA and Programmable Signal Processors . . . . . . . . . 12 1.4 Design Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 1.4.1 FPGA Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 1.4.2 The Altera EP2C35F672C6 . . . . . . . . . . . . . . . . . . . . . . . . 22 1.4.3 Case Study: Frequency Synthesizer . . . . . . . . . . . . . . . . . 29 1.4.4 Design with Intellectual Property Cores . . . . . . . . . . . . . 35 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2. Computer Arithmetic. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.2 Number Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 2.2.1 Fixed-Point Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 2.2.2 Unconventional Fixed-Point Numbers . . . . . . . . . . . . . . . 57 2.2.3 Floating-Point Numbers . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 2.3 Binary Adders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 2.3.1 Pipelined Adders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 2.3.2 Modulo Adders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 2.4 Binary Multipliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 2.4.1 Multiplier Blocks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 2.5 Binary Dividers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 2.5.1 Linear Convergence Division Algorithms . . . . . . . . . . . . 93 2.5.2 Fast Divider Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 2.5.3 Array Divider . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 2.6 Floating-Point Arithmetic Implementation . . . . . . . . . . . . . . . . . 104 2.6.1 Fixed-point to Floating-Point Format Conversion . . . . . 105 2.6.2 Floating-Point to Fixed-Point Format Conversion. . . . . 106 2.6.3 Floating-Point Multiplication . . . . . . . . . . . . . . . . . . . . . . 107 2.6.4 Floating-Point Addition . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 2.6.5 Floating-Point Division . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 2.6.6 Floating-Point Reciprocal . . . . . . . . . . . . . . . . . . . . . . . . . 112 2.6.7 Floating-Point Synthesis Results . . . . . . . . . . . . . . . . . . . 114 2.7 Multiply-Accumulator (MAC) and Sum of Product (SOP) . . 114 2.7.1 Distributed Arithmetic Fundamentals . . . . . . . . . . . . . . . 115 2.7.2 Signed DA Systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118 2.7.3 Modified DA Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 2.8 Computation of Special Functions Using CORDIC . . . . . . . . . . 120 2.8.1 CORDIC Architectures . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 2.9 Computation of Special Functions using MAC Calls . . . . . . . . . 130 2.9.1 Chebyshev Approximations . . . . . . . . . . . . . . . . . . . . . . . . 131 2.9.2 Trigonometric Function Approximation . . . . . . . . . . . . . 132 2.9.3 Exponential and Logarithmic Function Approximation 141 2.9.4 Square Root Function Approximation . . . . . . . . . . . . . . . 148 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154 3. Finite Impulse Response (FIR) Digital Filters . . . . . . . . . . . . 165 3.1 Digital Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 3.2 FIR Theory. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 3.2.1 FIR Filter with Transposed Structure . . . . . . . . . . . . . . . 167 3.2.2 Symmetry in FIR Filters . . . . . . . . . . . . . . . . . . . . . . . . . . 170 3.2.3 Linear-phase FIR Filters . . . . . . . . . . . . . . . . . . . . . . . . . . 171 3.3 Designing FIR Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 3.3.1 Direct Window Design Method. . . . . . . . . . . . . . . . . . . . . 173 3.3.2 Equiripple Design Method . . . . . . . . . . . . . . . . . . . . . . . . . 175 3.4 Constant Coefficient FIR Design . . . . . . . . . . . . . . . . . . . . . . . . . 177 3.4.1 Direct FIR Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 3.4.2 FIR Filter with Transposed Structure . . . . . . . . . . . . . . . 182 3.4.3 FIR Filters Using Distributed Arithmetic . . . . . . . . . . . . 189 3.4.4 IP Core FIR Filter Design . . . . . . . . . . . . . . . . . . . . . . . . . 204 3.4.5 Comparison of DA- and RAG-Based FIR Filters . . . . . 207 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 4. Infinite Impulse Response (IIR) Digital Filters . . . . . . . . . . . 215 4.1 IIR Theory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 4.2 IIR Coefficient Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 4.2.1 Summary of Important IIR Design Attributes . . . . . . . . 223 4.3 IIR Filter Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 4.3.1 Finite Wordlength Effects . . . . . . . . . . . . . . . . . . . . . . . . . 228 4.3.2 Optimization of the Filter Gain Factor . . . . . . . . . . . . . . 229 4.4 Fast IIR Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 4.4.1 Time-domain Interleaving . . . . . . . . . . . . . . . . . . . . . . . . . 230 4.4.2 Clustered and Scattered Look-Ahead Pipelining . . . . . . 233 4.4.3 IIR Decimator Design. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235 4.4.4 Parallel Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 4.4.5 IIR Design Using RNS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 239 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240 5. Multirate Signal Processing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 5.1 Decimation and Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245 5.1.1 Noble Identities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 5.1.2 Sampling Rate Conversion by Rational Factor . . . . . . . . 248 5.2 Polyphase Decomposition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 249 5.2.1 Recursive IIR Decimator . . . . . . . . . . . . . . . . . . . . . . . . . . 254 5.2.2 Fast-running FIR Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 5.3 Hogenauer CIC Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 5.3.1 Single-Stage CIC Case Study . . . . . . . . . . . . . . . . . . . . . . 257 5.3.2 Multistage CIC Filter Theory . . . . . . . . . . . . . . . . . . . . . . 259 5.3.3 Amplitude and Aliasing Distortion . . . . . . . . . . . . . . . . . 264 5.3.4 Hogenauer Pruning Theory . . . . . . . . . . . . . . . . . . . . . . . . 266 5.3.5 CIC RNS Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 5.4 Multistage Decimator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 273 5.4.1 Multistage Decimator Design Using Goodman–Carey Half-band Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 274 5.5 Frequency-Sampling Filters as Bandpass Decimators . . . . . . . . 277 5.6 Design of Arbitrary Sampling Rate Converters . . . . . . . . . . . . . 280 5.6.1 Fractional Delay Rate Change . . . . . . . . . . . . . . . . . . . . . 284 5.6.2 Polynomial Fractional Delay Design . . . . . . . . . . . . . . . . 290 5.6.3 B-Spline-Based Fractional Rate Changer . . . . . . . . . . . . 296 5.6.4 MOMS Fractional Rate Changer . . . . . . . . . . . . . . . . . . . 301 5.7 Filter Banks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308 5.7.1 Uniform DFT Filter Bank . . . . . . . . . . . . . . . . . . . . . . . . . 309 5.7.2 Two-channel Filter Banks . . . . . . . . . . . . . . . . . . . . . . . . . 313 5.8 Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328 5.8.1 The Discrete Wavelet Transformation . . . . . . . . . . . . . . . 332 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335 6. Fourier Transforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343 6.1 The Discrete Fourier Transform Algorithms . . . . . . . . . . . . . . . . 344 6.1.1 Fourier Transform Approximations Using the DFT . . . 344 6.1.2 Properties of the DFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346 6.1.3 The Goertzel Algorithm. . . . . . . . . . . . . . . . . . . . . . . . . . . 349 6.1.4 The Bluestein Chirp-z Transform. . . . . . . . . . . . . . . . . . . 350 6.1.5 The Rader Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353 6.1.6 The Winograd DFT Algorithm. . . . . . . . . . . . . . . . . . . . . 359 6.2 The Fast Fourier Transform (FFT) Algorithms . . . . . . . . . . . . . 361 6.2.1 The Cooley–Tukey FFT Algorithm . . . . . . . . . . . . . . . . . 363 6.2.2 The Good–Thomas FFT Algorithm. . . . . . . . . . . . . . . . . 373 6.2.3 The Winograd FFT Algorithm . . . . . . . . . . . . . . . . . . . . . 375 6.2.4 Comparison of DFT and FFT Algorithms . . . . . . . . . . . 379 6.2.5 IP Core FFT Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 381 6.3 Fourier-Related Transforms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385 6.3.1 Computing the DCT Using the DFT. . . . . . . . . . . . . . . . 387 6.3.2 Fast Direct DCT Implementation . . . . . . . . . . . . . . . . . . 388 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 391 7. Advanced Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401 7.1 Rectangular and Number Theoretic Transforms (NTTs) . . . . . 401 7.1.1 Arithmetic Modulo 2b ± 1 . . . . . . . . . . . . . . . . . . . . . . . . . 403 7.1.2 Efficient Convolutions Using NTTs . . . . . . . . . . . . . . . . . 405 7.1.3 Fast Convolution Using NTTs . . . . . . . . . . . . . . . . . . . . . 405 7.1.4 Multidimensional Index Maps . . . . . . . . . . . . . . . . . . . . . . 409 7.1.5 Computing the DFT Matrix with NTTs . . . . . . . . . . . . . 411 7.1.6 Index Maps for NTTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413 7.1.7 Using Rectangular Transforms to Compute the DFT . . 416 7.2 Error Control and Cryptography . . . . . . . . . . . . . . . . . . . . . . . . . 418 7.2.1 Basic Concepts from Coding Theory . . . . . . . . . . . . . . . . 419 7.2.2 Block Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424 7.2.3 Convolutional Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428 7.2.4 Cryptography Algorithms for FPGAs . . . . . . . . . . . . . . . 436 7.3 Modulation and Demodulation . . . . . . . . . . . . . . . . . . . . . . . . . . . 453 7.3.1 Basic Modulation Concepts . . . . . . . . . . . . . . . . . . . . . . . . 453 7.3.2 Incoherent Demodulation . . . . . . . . . . . . . . . . . . . . . . . . . 457 7.3.3 Coherent Demodulation . . . . . . . . . . . . . . . . . . . . . . . . . . . 463 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472 8. Adaptive Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 477 8.1 Application of Adaptive Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . 478 8.1.1 Interference Cancellation . . . . . . . . . . . . . . . . . . . . . . . . . . 478 8.1.2 Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 8.1.3 Inverse Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479 8.1.4 Identification. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 480 8.2 Optimum Estimation Techniques . . . . . . . . . . . . . . . . . . . . . . . . . 481 8.2.1 The Optimum Wiener Estimation . . . . . . . . . . . . . . . . . . 482 8.3 The Widrow–Hoff Least Mean Square Algorithm . . . . . . . . . . . 486 8.3.1 Learning Curves. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493 8.3.2 Normalized LMS (NLMS) . . . . . . . . . . . . . . . . . . . . . . . . . 496 8.4 Transform Domain LMS Algorithms . . . . . . . . . . . . . . . . . . . . . . 498 8.4.1 Fast-Convolution Techniques . . . . . . . . . . . . . . . . . . . . . . . 498 8.4.2 Using Orthogonal Transforms . . . . . . . . . . . . . . . . . . . . . . 500 8.5 Implementation of the LMS Algorithm . . . . . . . . . . . . . . . . . . . . 503 8.5.1 Quantization Effects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 504 8.5.2 FPGA Design of the LMS Algorithm . . . . . . . . . . . . . . . 504 8.5.3 Pipelined LMS Filters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 507 8.5.4 Transposed Form LMS Filter . . . . . . . . . . . . . . . . . . . . . . 510 8.5.5 Design of DLMS Algorithms . . . . . . . . . . . . . . . . . . . . . . . 511 8.5.6 LMS Designs using SIGNUM Function . . . . . . . . . . . . . . 515 8.6 Recursive Least Square Algorithms . . . . . . . . . . . . . . . . . . . . . . . 518 8.6.1 RLS with Finite Memory . . . . . . . . . . . . . . . . . . . . . . . . . . 521 8.6.2 Fast RLS Kalman Implementation . . . . . . . . . . . . . . . . . . 524 8.6.3 The Fast a Posteriori Kalman RLS Algorithm. . . . . . . . 529 8.7 Comparison of LMS and RLS Parameters . . . . . . . . . . . . . . . . . 530 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532 9. Microprocessor Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 9.1 History of Microprocessors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537 9.1.1 Brief History of General-Purpose Microprocessors . . . . 538 9.1.2 Brief History of RISC Microprocessors . . . . . . . . . . . . . . 540 9.1.3 Brief History of PDSPs . . . . . . . . . . . . . . . . . . . . . . . . . . . 541 9.2 Instruction Set Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544 9.2.1 Addressing Modes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 544 9.2.2 Data Flow: Zero-,One-, Two- or Three-Address Design 552 9.2.3 Register File and Memory Architecture . . . . . . . . . . . . . 558 9.2.4 Operation Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 562 9.2.5 Next Operation Location . . . . . . . . . . . . . . . . . . . . . . . . . . 565 9.3 Software Tools . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 566 9.3.1 Lexical Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 567 9.3.2 Parser Development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578 9.4 FPGA Microprocessor Cores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588 9.4.1 Hardcore Microprocessors . . . . . . . . . . . . . . . . . . . . . . . . . 589 9.4.2 Softcore Microprocessors . . . . . . . . . . . . . . . . . . . . . . . . . . 594 9.5 Case Studies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 605 9.5.1 T-RISC Stack Microprocessors . . . . . . . . . . . . . . . . . . . . . 605 9.5.2 LISA Wavelet Processor Design . . . . . . . . . . . . . . . . . . . . 610 9.5.3 Nios FFT Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 625 Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 634 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 645 A. Verilog Source Code 2001 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 661 B. HDL" onclick="tagshow(event)" class="t_tag">VHDL and Verilog Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 729 B.1 List of Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 731 B.2 Library of Parameterized Modules (LPM) . . . . . . . . . . . . . . . . . 733 B.2.1 The Parameterized Flip-Flop Megafunction (lpm ff) . . 733 B.2.2 The Adder/Subtractor Megafunction . . . . . . . . . . . . . . . 737 B.2.3 The Parameterized Multiplier Megafunction (lpm mult) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 741 B.2.4 The Parameterized ROM Megafunction (lpm rom) . . . 746 B.2.5 The Parameterized Divider Megafunction (lpm divide) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 749 B.2.6 The Parameterized RAM Megafunction (lpm ram dq) 751 C. Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 755 D. CD-ROM File: “1readme.ps” . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 761 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769
该帖子部分内容已隐藏
付费阅读
3积分
NiosII 的开发环境提供了对符合 CFI 标准的 Flash 的支持,使用几个简单的函数,即 可以操作 Flash。本文介绍了 nios 中 flash 的使用。 关键词:EDA,Nios II,CFI 标准,Flash 在嵌入式系统中,Flash 是最常用组件之一。许多使用过 flash 的朋友都了解,Flash 的特点 是“读来容易写来难”。通常,可以直接读出 Flash 的内容;但如果要写入数据,就要发送一 长串命令,比如像:555 ,AA,2AA,55,555,A0 ,PA,PD 就表示对 PA 地址写入数据 PD,实际情况还要复杂一点,因为通常还要包含许多查询操作。 哎呀,这真是好繁琐呀,有没有省力的方法呢?现在好了,NiosII 的开发环境提供了对符合 CFI 标准的 Flash 的支持,使用几个简单的函数,就可以操作 Flash,真是方便了许多。 在这里,我粗略得介绍一下 nios 中 flash 的使用;更加详细的帮助信息请您参考 Altera 公司 提供的文档。如果本文能对您有一点点帮助,我都会感到非常高兴。
该帖子部分内容已隐藏
付费阅读
10积分
利用 FPGA 实现大型设计时,可能需要 FPGA 具有以多个时钟运行的多重数据通路,这种 多时钟 FPGA 设计必须特别小心,需要注意最大时钟速率、抖动、最大时钟数、异步时钟 设计和时钟/数据关系。设计过程中最重要的一步是确定要用多少个不同的时钟,以及如何 进行布线,本文将对这些设计策略深入阐述。 FPGA 设计的第一步是决定需要什么样的时钟速率,设计中最快的时钟将确定 FPGA 必须 能处理的时钟速率。最快时钟速率由设计中两个触发器之间一个信号的传输时间 P 来决定, 如果 P 大于时钟周期 T,则当信号在一个触发器上改变后,在下一个逻辑级上将不会改变, 直到两个时钟周期以后才改变,如图 1 所示。
该帖子部分内容已隐藏
付费阅读
10积分
LCD(Liquid Crystal Display。即液晶显示屏)的驱动有多种方法,通常采用两种方法:基于专用集成电路 的驱动和基于通用微处理器的驱动。专用控制器以最简单的方式受控于计算机,接收并反馈计算机的各种 信息,经过自己独立的信息处理实现对显示缓冲区的管理,并向驱动器提供所需要的各种信号、脉冲,操纵驱 动器实现模块的显示功能。这种控制器具有自己一套专用的指令,用户必须熟悉这种控制器的使用方法,才 能进行操作。文中研究了一种基于FPGA的液晶显示驱动方法,与专用集成电路相比,FPGA的设计更灵 活。与通用微处理器相比,FPGA的运行速度更快。基于FPGA液晶显示驱动器的像素时钟为25.175 Ml-Iz, 而普通的单片机难以满足要求。设计的液晶显示控制器选用ALTERA公司的CYCLONE系列FPGA芯片 作为驱动电路的核心部件。FP(遗(FieId Programmable Gate A1TOW)即现场可编程门阵列器件。是一种超大 规模集成电路,具有丰富的片内EAB(Embedded memory AITOW Blocks),以及在电路可重配置能力(In Cir. cuit Reconfigurable,ICR),仅需要少量外围器件就能实现本设计的功能。所设计的逻辑程序或电路原理图文 件经编译、适配后生成配置数据,将该数据写入存储器内,通过配置电路在系统上电后将配置数据下载到 融芯片中,FPGA芯片即可执行所设计的逻辑功能。因此,FPGA芯片非常适合于进行快速原型设计。 设计者可完全控制产品开发过程中由逻辑设计到最终产品的全过程【l】。这种模式也使用户摆脱了对控制 器的设计、加工、制作等一系列工作,又使计算机避免了对显示器的繁琐控制。
该帖子部分内容已隐藏
付费阅读
1积分
摘要:本文论述了使用FPGA器件,利用SOPC嵌入式开发技术,复用多种软CPU IP核,使用片内总线代替机群内的计算机网络,移植现有的软件开发方法,在片上构建包含WEB 服务器、业务逻辑应用服务器、数据库服务器的B/S系统的可行性及实现方法,并给出一个具体实现方案。 引言 B/S系统一直是基于大中小型服务器、台式机等通用计算机而设计的。为具体单个的B/S系统从芯片开始量身订做一整套计算机软硬件系统,使其安全、可靠、高效地运行,长期以来被认为是一件不现实的事情。 近年来, FPGA器件和SOPC嵌入式开发技术的迅速发展为多处理器片上系统的实现提供了灵活的解决方案。利用可配置处理器软核复用的多处理器片上系统,借以实现B/S系统软硬件一体化,已经成为一个值得研究的课题。 本文探讨使用FPGA器件,利用SOPC技术,复用多种软CPU IP核,移植现有的编程模式,在片上构建一个多处理器B/S系统的可行性及实现方法。这种系统不仅效率、处理事务的吞吐率与现有的以通用机为主的B/S系统相当,且其安全性、可靠性更好,成本更为低廉。
该帖子部分内容已隐藏
付费阅读
3积分
一:建立 niosII 系统。 第一小节:建立项目。 建立一个目录,比如 H:\DB2005\project\niosDK\Example\NiosSmall 启动 QuartusII4.2 软件。 选择 File -> New Project Wizard 在 Diectory,Name,Top-Level Entity 中如下填写,在你自己的项目中,你可以类比着填写:
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
10积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
10积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
3积分
该指南将会使你熟悉niosII IDE和MicroC/OS-II开发流程。niosII IDE提供设计者一个充足的niosII开发平台。niosII IDE包含MicroC/OS-II实时操作系统,为设计者提供快速地搭建基于niosII处理器的MicroC/OS-II应用程序的能力。该指南提供了搭建一个基于MicroC/OS-II实时操作系统的简单程序的步骤说明。 基于niosII处理器的MicroC/OS-II操作系统的详细叙述请参阅the Nios II Software Developer’s Handbook(niosII软件开发手册)的“MicroC/OS-II Real-Time Operating System”(MicroC/OS-II实时操作系统)章节。
该帖子部分内容已隐藏
付费阅读
10积分
The purpose of this book is to provide a practical approach to managing security in FPGA designs for researchers and practitioners in the electronic design automation (EDA) and FPGA communities, including corporations, industrial and government research labs, and academics. This book combines theoretical underpinnings with a practical design approach and worked examples for combating real world threats. To address the spectrum of lifecycle and operational threats against FPGA systems, a holistic view of FPGA security is presented, from formal top level specification to low level policy enforcement mechanisms, which integrates recent advances in the fields of computer security theory, languages, compilers, and hardware. The net effect is a diverse set of static and runtime techniques that, working in cooperation, facilitate the composition of robust, dependable, and trustworthy systems using commodity components. We wish to acknowledge the many people who helped us ensure the success of our work on reconfigurable hardware security. In particular, we wish to thank Andrei Paun and Jason Smith of Louisiana Tech University for providing us with a Linuxcompatible version of Grail+. We also wish to thank those who gave us comments on drafts of this book, including Marco Platzner of the University of Paderborn, and Ali Irturk and Jason Oberg of the University of California, San Diego. This research was funded in part by National Science Foundation Grant CNS-0524771 and NSF Career Grant CCF-0448654.
该帖子部分内容已隐藏
付费阅读
3积分
SOPC 必将成为未来 IC 发展的趋势,实时操作系统 uClinux 在软核 NiosⅡ上 的成功移植对于嵌入式产品的开发有重要的意义。 本文首先介绍了 NiosⅡ和 uClinux 然后论述了 uClinux 和 DE2 开发板的一些重要 特性以及如何利用 QuartusⅡ、SOPC Builder 等软件工具来构建一个以 NiosⅡ处理器 为核心的硬件平台。 这个硬件平台为 uClinux 操作系统提供了 4M 的 flash,8M 的 sdram 和 DM9000 以太网控制器等外围设备。在已经构建成功的硬件平台上编写的几个中断测试程序, 用于验证刚建立的硬件和熟悉如何在 NiosⅡIDE 中编写程序。 接着分析嵌入式操作系统 uClinux 的内核结构、内存管理、多进程处理、针对实 时性的解决方案和开发环境,对 uClinux 有一个深刻的认识,会下一步研究开发很有 帮助。 在从理论上叙述了内核、内核配置、文件系统三者之间的关系和各自的作用之后, 就详细介绍如何通过 NiosⅡIDE 和 NiosⅡSDK Shell 将 uClinux 操作系统下载到 flash 中。
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
10积分
AXI4-流协议作为一个标准接口,用于连接进行数据交换的组件。接口可以用来连接一个单一的主机,主机向接 收数据的单一从机发送数据。协议也可用于连接若干个主机和从机的组件。协议支持共用一组信号线的多个数据流, 允许构建一个通用互联(generic interconnect),可以执行 upsizing、downsizing 以及路由操作。 AXI4-流接口也支持多种不同的流类型。流协议定义了传输和包之间的关系。
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子内容已隐藏
付费阅读
10积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
3积分
本部门所承担的FPGA设计任务主要是两方面的作用:系统的原型实现和ASIC的原型验证。编写本流程的目的是: 在于规范整个设计流程,实现开发的合理性、一致性、高效性。 形成风格良好和完整的文档。 实现在FPGA不同厂家之间以及从FPGA到ASIC的顺利移植。 便于新员工快速掌握本部门FPGA的设计流程。 由于目前所用到的FPGA器件以Altera的为主,所以下面的例子也以Altera为例,工具组合为 modelsim + LeonardoSpectrum/FPGACompilerII + Quartus,但原则和方法对于其他厂家和工具也是基本适用的。
该帖子内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
6积分
此内容为付费阅读,请付费后查看
该帖子部分内容已隐藏
付费阅读
3积分
有了上一讲HAL的基础,我们来关注一下DMA在NIOS 中的实现和编程。DMA是个老问题了,从8086/8088一直到现在,完成不需要CPU参与的数据搬家,源和目标可以是内存也可以是设备,在NIOS II中通过基于HAL编程完成。( ~) Y( h* L0 G$ y)
该帖子部分内容已隐藏
付费阅读
3积分
此内容为付费阅读,请付费后查看