基于VHDL代码的FPGA上的声音发生器

时间:2015-04-21 16:56:14

标签: vhdl fpga speaker

我需要使用键盘作为音符的输入,并使用挖掘扬声器作为输出。 我打算只使用一个八度音阶。 我最有趣的问题是:

  1. 如何用VHDL代码表示音符。

  2. 我如何(或者我需要)实施使用Spartan 3E Starter内置DAC的DAC模块?我在其他论坛上看过它无法实现。我需要使用它才能将音符传送到扬声器。监督我和我的同事项目的老师建议我查看PWM(但我发现的所有内容都是以电子方式解释,没有附带的代码或实施说明)。

  3. 除了键盘控制器,一个处理模块(用于返回与音符向量中按下的键相对应的音符)和DAC,我到目前为止已经找到了我需要的,我还需要什么。

1 个答案:

答案 0 :(得分:2)

有一个DAC(见评论)

Spartan-3E入门套件上没有DAC。使用低通PWM信号是从数字输出生成模拟信号电平的常用方法。

您需要为PWM定义精度,即8位或256级。对于要输出的每个音频样本,需要从0到255计数。当计数器小于所需的样本水平时,输出1,否则输出0.当计数器达到255时,重置它并转到下一个样本

因此,如果你想要8位精度(256级)和8KHz信号,计数器必须运行在256 * 8000 = 2.048MHz。

对于您的其他问题,没有简单的答案。作为设计师,你的工作就是明白这一点。