Altera FreeCore Module Library

PLD主页 技术动态 培训中心 友情连接 宏功能库 常见问题 新手入门 关于我们 PLD论坛

[前言} 我们要感谢 Rune Baeverrud ,他的卓越工作创造出了FreeCore Module Library,我们要感谢更多才华横

溢的工程师,是他们丰富了Freecore. 我们希望能有更多的朋友加入进来,一同完善这一人类共同的技术财富。

[Note] This section contains functions written in AHDL - the Altera proprietary HDL language. The source files for functions #1 to #16 can be found at the download page. Follow the link at the bottom of this page.   Functions #17 to #28 are provided as .zip files with included documentation

Contributed by: Module Description
#1:
Rune Baeverrud
Divide By N Frequency Divider
This cascadeable function divides a frequency by any integer number and is used for timing generation in other modules, e.g. the Compact UART Reference Design or the I2C Controller Reference Design.
#2:
Rune Baeverrud
Compact UART, Transmitter Module
The Compact UART transmitter provides a fully functional asynchronous serial transmitter. Interfacing to logic or a microprocessor is easily accomplished using the control and status signals provided.
#3:
Rune Baeverrud
Compact UART, Receiver Module
The Compact UART receiver provides a fully functional asynchronous serial receiver. Interfacing to logic or a microprocessor is easily accomplished using the control and status signals provided.
#4:
Rune Baeverrud
Compact UART Reference Design
A complete UART with microprocessor interface. Just drop it in and off you go.
#5:
Rune Baeverrud
I2C Controller
This is an I2C Controller which may be used as a controller in single master systems. Interfacing to logic or a microprocessor is easily accomplished using the control and status signals provided.
#6:
Rune Baeverrud
I2C Controller Reference Design
A complete I2C Controller with microprocessor interface. Just drop it in and off you go.
#7:
Woody Johnson
Gray Code Counter
The gray module implements a parameterized width gray code sequence counter. Gray code count sequences are distinguished by the fact that only one bit changes as the counter goes through it's sequence.
#8:
Rune Baeverrud
512-point Cosine
This is a 512 points (128 points / quadrant) cosine function using a single 256 point lookup-table (one EAB). 7 bits + sign bipolar or 8 bit unipolar output resolution, giving a Signal-to-Noise Ratio (SNR) of more than 50dB.
#9:
Rune Baeverrud
512-point Sine
This is a 512 points (128 points / quadrant) sine function using a single 256 point lookup-table (one EAB). 7 bits + sign bipolar or 8 bit unipolar output resolution, giving a Signal-to-Noise Ratio (SNR) of more than 50dB.
#10:
Rune Baeverrud
Numerically Controlled Oscillator/Modulator
This is a very high speed Numerically Controlled Oscillator/Modulator achieving an operating speed of more than 80MHz input clock frequency using an Altera FLEX 10K -3 device.
#11:
Rune Baeverrud
VGA Sync Generator
This module makes it very easy to generate the signals required for output to an industry standard VGA computer screen. A number of status output signals are provided for easy synchronizing to external pixel data.
#12:
Woody Johnson
MII Management Interface Controller
This is a design that can be used to read or write a register value as defined by the IEEE 802.3 MII Management Interface.
#13:
Iain
Rankin
Corner Bender
This LPM function was developed to permit the most efficient separation of the component bitplanes in an image for display on a fast binary array modulator, using pulse width modulation
#14:
Frank
Rodler
Dynamic RAM Controller
Dynamic RAMs are still the cheapest way to implement memory for microprocessor systems. If there is a CPLD already planed in the new design, the DRAM controller can be easily added to the device.
#15:
Woody
Johnson
Linear Feedback Shift Register (LFSR)
This is a design that can be used to implement a linear feedback shift register (LFSR) of various lengths.  Such registers are useful for replacing counters when the count sequence is unimportant (such as in implementing fifo head and tail pointers) or were only the terminal count value is used.
#16:
Rune Baeverrud
Variable Frequency Divider
This function is similar to the div_by_n function also found in the FreeCore Library. The difference is that while div_by_n divides a frequency by a fixed value provided as a parameter, var_div will divide a frequency by a variable value provided at it's D[] input
#17:
Steven Groom
Percentage Module, outputs A*100/B
#18:
Steven Groom
Improved UART
#19:
Keith Willis
Fully Programmable UART, version 1.1
#20:
Nik Snoek
PRBS module
#21:
Peter Szymansky
Byte Wide CRC32 Generator/Detector
#22:
Steven Groom
Bit Serial Multiplier
#23:
Steven Groom
Arithmetic Logic Unit
#24:
Steven Groom
Sine/Cosine using the CORDIC algorithm
#25:
Sven Zeisberg
Generating Sine/Cosine using integrators
#26:
Steven Groom
Sequential multiplier using Booth's Algorithm
#27:
Steven Groom
Very fast exp(i), Sine/Cosine
#28:
pealed@
phasemetrics.com
Parameterized variable length pipeline

Go to the FreeCore Library DOWNLOAD page!

 

 编辑设计: 胡晟  技术顾问: 朱仁昌 Copyright 1999-2000 PLD World    http://pld.126.com