CRKit firmware library consists of all blocks that are essential to make use of the features of CRKit hardware platforms, and also other blocks that are used to implement baseband processing algorithms. Listed below are some of the blocks. * Common * [wiki:Software/Firmware/aLibrary/DAC-inf DAC Interface] * ADC Interface * SPI * Register Map * ... * Networking * Ethernet * PCIe * RS232 * ... * Communication * Modulator/ Demodulator * Interleaver/ Deinterleaver * OFDM * Timing Synchronization * Frequency Offset Estimation * Frequency Offset Correction * ... * DSP * AWGN Generator * Sine wave generator * Filters * ... * Framework specific * CRKit Framework * System Controller * Command Generator * Memory Controller * Application Control The common and networking sub-libraries contain blocks that are required for using various features of the hardware, like the Ethernet, PCIe interfaces to connect to the host computer or other CRKit nodes, and SPI to configure the ADC/DAC and RF cards. Communication and DSP sub-libraries contain blocks that can be used in baseband processing algorithms. Along with these blocks, the CRKit library also contains a framework (CRKit framework)- a set of building blocks interconnected to form a complete radio system, which makes performing experiments on the boards much quicker and easier. The framework specific sub-library consists this CRKit framework, and those blocks that perform specific control functions in the framework. [..]