[Oberon] FPGA - Oberon - Sound
Magnus Karlsson
magnus at saanlima.com
Mon Oct 29 21:01:10 CET 2018
The generic Pepino .ucf file with all pins defined is available here:
http://www.saanlima.com/download/pepino-v1.1/pepino.ucf
The complete OPL2 project is available here:
http://www.saanlima.com/download/pepino-v1.1/opl2_pepino_lx9.zip
For sound you need to implement a simple 1-bit DAC, also called
sigma-delta DAC. It basically produce a digital waveform with the
high/low ratio equal to the input analog value.
Here is the dac module used in the OPL2 project. It takes a 12-bit
analog value and produce a 1-bit digital waveform with high/low ratio
based on the analog value:
module dac(clock, DACin, DACout);
input clock;
input [11:0] DACin;
output DACout;
reg [12:0] accumulator;
always @(posedge clock)
accumulator <= accumulator[11:0] + DACin;
assign DACout = accumulator[12];
endmodule
On 10/29/2018 12:03 PM, Tomas Kral wrote:
>> need a sound HW.
> Pepino LX9 supports audio, but how to map audio in `UCF' constraint
> file?
>
> How do I know what location corresponds to what hardware connected?
>
> Comparing `Pepino' wiring diagram with various `UCF' files I have got, I
> simply cannot see any clue, as also `UCF' files differ albeit
> for the same platform.
>
> e.g.
>
> One file
> #DIP switch
> NET "SWI[0]" LOC = "G14" | PULLDOWN; # right-most switch
> ...
> The other
> NET "swi[0]" LOC = "F12"; # no pull down?
> ...
> # SRAM
> NET "SRAM_CE0" LOC = "H4"; #active low
> ...
> The other
> # SRAM
> NET "SRce0" LOC = "P7";
>
> How do I know the `LOC'ation?
>
> # audio
> NET "AudioL" LOC = "???";
> NET "AudioR" LOC = "???";
>
More information about the Oberon
mailing list