[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