《C程序設計語言》是由C語言的設計者Brian W. Kernighan和Dennis M. Ritchie編寫的一部介紹標準C語言及其程序設計方法的權威性經典著作。全面、系統地講述了C語言的各個特性及程序設計的基本方法,包括基本概念、類型和表達式、控制流、函數與程序結構、指針與數組、結構、輸入與輸出、UNIX系統接口、標準庫等內容。《C程序設計語言》的講述深入淺出,配合典型例證,通俗易懂,實用性強,適合作為大專院校計算機專業或非計算機專業的C語言教材,也可以作為從事計算機相關軟硬件開發的技術人員的參考書。 在計算機發展的歷史上,沒有哪一種程序設計語言像C語言這樣應用如此廣泛。
當許多編程人員從事這項工作但又不使用源代碼管理工具時,源代碼管理幾乎不可能進行。Visual SourceSafe是Visual Basic的企業版配備的一個工具,不過這個工具目的是為了保留一個內部應用版本,不向公眾發布(應當說明的是,M i c r o s o f t并沒有開發Visual SourceSafe,它是M i c r o s o f t公司買來的) 。雖然Visual SourceSafe有幫助文本可供參考,但該程序的一般運行情況和在生產環境中安裝 Visual SourceSafe的進程都沒有詳細的文字說明。另外,Visual SourceSafe像大多數M i c r o s o f t應用程序那樣經過了很好的修飾,它包含的許多功能特征和物理特征都不符合 Microsoft Wi n d o w s應用程序的標準。例如,Visual SourceSafe的三個組件之一(Visual SourceSafe Administrator)甚至連F i l e菜單都沒有。另外,許多程序的菜單項不是放在最合適的菜單上。在程序開發環境中實現Visual SourceSafe時存在的復雜性,加上它的非標準化外觀和文檔資料的不充分,使得許多人無法實現和使用 Visual SourceSafe。許多人甚至沒有試用 Vi s u a l S o u r c e S a f e的勇氣。我知道許多高水平技術人員無法啟動Visual SourceSafe并使之運行,其中有一位是管理控制系統項目師。盡管如此,Visual SourceSafe仍然不失為一個很好的工具,如果你花點時間將它安裝在你的小組工作環境中,你一定會為此而感到非常高興。在本章中我并不是為你提供一些指導原則來幫助你創建更好的代碼,我的目的是告訴你如何使用工具來大幅度減少管理大型項目和開發小組所需的資源量,這個工具能夠很容易處理在沒有某種集成式解決方案情況下幾乎無法處理的各種問題。
針對傳統集成電路(ASIC)功能固定、升級困難等缺點,利用FPGA實現了擴頻通信芯片STEL-2000A的核心功能。使用ISE提供的DDS IP核實現NCO模塊,在下變頻模塊調用了硬核乘法器并引入CIC濾波器進行低通濾波,給出了DQPSK解調的原理和實現方法,推導出一種簡便的引入?仔/4固定相移的實現方法。采用模塊化的設計方法使用VHDL語言編寫出源程序,在Virtex-II Pro 開發板上成功實現了整個系統。測試結果表明該系統正確實現了STEL-2000A的核心功能。
Abstract:
To overcome drawbacks of ASIC such as fixed functionality and upgrade difficulty, FPGA was used to realize the core functions of STEL-2000A. This paper used the DDS IP core provided by ISE to realize the NCO module, called hard core multiplier and implemented CIC filter in the down converter, described the principle and implementation detail of the demodulation of DQPSK, and derived a simple method to introduce a fixed phase shift of ?仔/4. The VHDL source code was designed by modularity method , and the complete system was successfully implemented on Virtex-II Pro development board. Test results indicate that this system successfully realize the core function of the STEL-2000A.