mirror of
git://projects.qi-hardware.com/nn-usb-fpga.git
synced 2025-04-21 12:27:27 +03:00
Fixing some examples, adding scripts for compiling xilinx libs with ghdl
This commit is contained in:
@@ -3,9 +3,6 @@
|
||||
#define MemoryRead(A) (*(volatile unsigned long*)(A))
|
||||
#define MemoryWrite(A,V) *(volatile unsigned long*)(A)=(V)
|
||||
|
||||
typedef unsigned long uint32;
|
||||
typedef unsigned short uint16;
|
||||
|
||||
|
||||
int main(void)
|
||||
{
|
||||
@@ -13,23 +10,29 @@ int main(void)
|
||||
volatile unsigned short *data16;
|
||||
volatile unsigned int *data32;
|
||||
|
||||
|
||||
volatile unsigned char test8;
|
||||
volatile unsigned short test16;
|
||||
volatile unsigned int test32, tmp;
|
||||
volatile unsigned long test64;
|
||||
|
||||
/*
|
||||
Operaciones de acceso a memoria
|
||||
*/
|
||||
|
||||
data8 = (unsigned char *)(0x20000410);
|
||||
data16 = (unsigned short *)(0x20000210);
|
||||
data32 = (unsigned int *)(0x20000330);
|
||||
|
||||
*data8 = 0x10;
|
||||
*data8 = 0x44;
|
||||
data8++;
|
||||
*data8 = 0x66;
|
||||
data8++;
|
||||
*data8 = 0x55;
|
||||
data8++;
|
||||
*data8 = 0x22;
|
||||
data8++;
|
||||
*data8 = 0x11;
|
||||
data8++;
|
||||
*data8 = 0x12;
|
||||
data8++;
|
||||
*data8 = 0x13;
|
||||
data8++;
|
||||
*data8 = 0x14;
|
||||
|
||||
*data16 = 0x2020;
|
||||
data16++;
|
||||
@@ -60,6 +63,25 @@ int main(void)
|
||||
data32 = (unsigned int *)(0x20000020);
|
||||
test32 = *data32;
|
||||
|
||||
|
||||
/*
|
||||
Operaciones aritméticas
|
||||
*/
|
||||
|
||||
|
||||
test32 = test32 + test8;
|
||||
test32 = 0x11111111 + test32;
|
||||
test32 = 0x1111 + test32;
|
||||
test32 = test32 + *data32;
|
||||
|
||||
test64 = test32 * test8;
|
||||
test64 = 0x11111111 * test32;
|
||||
test64 = 0x1111 * test32;
|
||||
test64 = test32 * *data32;
|
||||
|
||||
|
||||
|
||||
|
||||
while(1){
|
||||
|
||||
}
|
||||
|
||||
@@ -1,3 +1,7 @@
|
||||
##########################################################
|
||||
### WARNING YOU MUST SET THE VARIABLE XILINX FIRST ##
|
||||
### /install_dir/Xilinx/10.1/ISE/
|
||||
##########################################################
|
||||
DESIGN = plasma
|
||||
PINS = $(DESIGN).ucf
|
||||
DEVICE = xc3s500e-VQ100-4
|
||||
|
||||
@@ -47,12 +47,12 @@ INIT_02 => X"acacacac0003373cac038cac8cac8cac8c243c40034040033423038f038f8f8f",
|
||||
INIT_03 => X"000300ac0300000034038c8c8c8c8c8c8c8c8c8c8c8c3403acacacacacacacac",
|
||||
INIT_04 => X"3c34ac343c34a42434a42434a42434a02434a02434a02434a02434a024343c27",
|
||||
INIT_05 => X"8cac343caf008c34a730009434a330009034af008ca730009434a3300090ac34",
|
||||
INIT_06 => X"82240c00142400100080afafaf270003ac3c1030008c343c0008af008c34af00",
|
||||
INIT_07 => X"26240c2608240c00102c3002242400afafafaf2727038f8f8f0000140082260c",
|
||||
INIT_08 => X"2703008f8c3c10000caf2730038c343c2703008f240caf2727038f8f8f8f0216",
|
||||
INIT_09 => X"000000000000000000000000000000000024038c001424ac00008c243c3c243c",
|
||||
INIT_0A => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0B => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_06 => X"008f300093af00008f8caf24008faf00343c8faf00008f300093af008c34af00",
|
||||
INIT_07 => X"30008c343c0008af0000008f8caf00000000008faf000000000000008faf0000",
|
||||
INIT_08 => X"2727038f8f8f0000140082260c82240c00142400100080afafaf270003ac3c10",
|
||||
INIT_09 => X"8f240caf2727038f8f8f8f021626240c2608240c00102c3002242400afafafaf",
|
||||
INIT_0A => X"8c001424ac00008c243c3c243c2703008f8c3c10000caf2730038c343c270300",
|
||||
INIT_0B => X"0000000000000000000000000000000000000000000000000000000000002403",
|
||||
INIT_0C => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0D => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0E => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
@@ -122,14 +122,14 @@ INIT_00 => X"b8afaeadacabaaa9a8a7a6a5a4a3a2a1bd000000a560a4a0bd1d8404a5059c1c",
|
||||
INIT_01 => X"b9b8afaeadacabaaa9a8a7a6a5a4a3a2a1a50086c6c406bb00bb00ba5a1abfb9",
|
||||
INIT_02 => X"9392919000405a1a06e0a606a606a606a6a50584e0029b401bbd60bb60bbbabf",
|
||||
INIT_03 => X"00e000c4e0000085a2e09f9d9c9e979695949392919002e09f9d9c9e97969594",
|
||||
INIT_04 => X"026482420264820264820264820264a2026582026482026482026482026403bd",
|
||||
INIT_05 => X"62624202a2004262a242004262a242004262a20082a242004262a24200a28242",
|
||||
INIT_06 => X"04040000511180400082b0b1bfbd00e044024042006243020000a2006263a200",
|
||||
INIT_07 => X"108400100084000040824412111080b0b1b2bfbdbde0b0b1bf00004000021000",
|
||||
INIT_08 => X"bde000bf4202400000bfbd42e0424202bde000bf0400bfbdbde0b0b1b2bf1211",
|
||||
INIT_09 => X"000000000000000000040000802400800042e0a2006463404500624402054302",
|
||||
INIT_0A => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0B => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_04 => X"028362420283620283620283620283a2028562028362028362028362028304bd",
|
||||
INIT_05 => X"82824202a2004282a242004282a242004282a20062a242004282a24200a26242",
|
||||
INIT_06 => X"00a34200a2a24300a382a24200a2a3624202a3a24300a34200a2a2008284a200",
|
||||
INIT_07 => X"42006243020000a2004300a382a24302430300a3a243024302430300a3a20043",
|
||||
INIT_08 => X"bdbde0b0b1bf0000400002100004040000511180400082b0b1bfbd00e0440240",
|
||||
INIT_09 => X"bf0400bfbdbde0b0b1b2bf1211108400100084000040824412111080b0b1b2bf",
|
||||
INIT_0A => X"a2006463404500624402054302bde000bf4202400000bfbd42e0424202bde000",
|
||||
INIT_0B => X"00000000000000000000000000000000000000000000040000802400800042e0",
|
||||
INIT_0C => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0D => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0E => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
@@ -195,18 +195,18 @@ INIT_3F => X"0000000000000000000000000000000000000000000000000000000000000000")
|
||||
|
||||
RAMB16_S9_inst2 : RAMB16_S9
|
||||
generic map (
|
||||
INIT_00 => X"00000000000000000000000000000000ff00000000ff18000600060004008400",
|
||||
INIT_00 => X"00000000000000000000000000000000ff00000000ff18000700070005008500",
|
||||
INIT_01 => X"000000000000000000000000000000000000012000002000d800d800ff700000",
|
||||
INIT_02 => X"0000000000000010000000000000000000010060006060000000000000000000",
|
||||
INIT_03 => X"0000000000201000000000000000000000000000000000000000000000000000",
|
||||
INIT_04 => X"31030030300300220200210200200200000400000400000400000400000420ff",
|
||||
INIT_05 => X"000055550000000300ff000002000000000400000000ff000002000000000031",
|
||||
INIT_06 => X"00000000000080000000000000ff10000020ff00000000200000000000000000",
|
||||
INIT_07 => X"ff0000ff0100000000000010ff009000000000ff00000000001000ff00000000",
|
||||
INIT_08 => X"000000000020ff000100ff000000002000000000000000ff00000000000010ff",
|
||||
INIT_09 => X"000000000000000000200000002028000000000000ff00001000000400100400",
|
||||
INIT_0A => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0B => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_06 => X"0000000000001000000000110000001811110000100000000000000000000000",
|
||||
INIT_07 => X"0000000020000000100000000000101a1011000000101c101a10110000001000",
|
||||
INIT_08 => X"ff00000000001000ff0000000000000000000080000000000000ff10000020ff",
|
||||
INIT_09 => X"00000000ff00000000000010ffff0000ff0100000000000010ff009000000000",
|
||||
INIT_0A => X"0000ff00001000000500100500000000000020ff000100ff0000000020000000",
|
||||
INIT_0B => X"0000000000000000000000000000000000000000000020000000202800000000",
|
||||
INIT_0C => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0D => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0E => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
@@ -272,18 +272,18 @@ INIT_3F => X"0000000000000000000000000000000000000000000000000000000000000000")
|
||||
|
||||
RAMB16_S9_inst3 : RAMB16_S9
|
||||
generic map (
|
||||
INIT_00 => X"4c4844403c3834302c2824201c181410980e008004fd2a00c800e000dc00d001",
|
||||
INIT_01 => X"504c4844403c3834302c2824201c18141000082410200060125c1058fc005450",
|
||||
INIT_00 => X"4c4844403c3834302c2824201c181410980e008004fd2a009800b000a800a001",
|
||||
INIT_01 => X"504c4844403c3834302c2824201c181410003b2410200060125c1058fc005450",
|
||||
INIT_02 => X"0c08040000083c0048080c440840043c006000000800000801681360115c5854",
|
||||
INIT_03 => X"00080c000810121900082c2824201c1814100c08040000082c2824201c181410",
|
||||
INIT_04 => X"31340030303000221400211200201000141400131300121200111100101000f8",
|
||||
INIT_04 => X"31340030303000221400211200201000111400221300551200661100441000f0",
|
||||
INIT_05 => X"000055550400003802ff00001800ff00001804000002ff00001600ff00000031",
|
||||
INIT_06 => X"000dc800030a210d0000101418e021080000fc020000200000c6040000200400",
|
||||
INIT_07 => X"fc57c8fc0030c800050a0f06fc1c211014181ce020081014182100f6000001c8",
|
||||
INIT_08 => X"180800100000fd001010e801080020001808001049c810e820081014181c06f4",
|
||||
INIT_09 => X"000000000000000000001010200000207084080000fa0400210000dc0000bc00",
|
||||
INIT_0A => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0B => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_06 => X"0004ff0000042100040004110004042111110404210004ff0000040000200400",
|
||||
INIT_07 => X"020000200000f908121800040008210021000004082100210021000004081218",
|
||||
INIT_08 => X"e020081014182100f6000001fb000dfb00030a210d0000101418e021080000fc",
|
||||
INIT_09 => X"1049fb10e820081014181c06f4fc57fbfc3330fb00050a0f06fc1c211014181c",
|
||||
INIT_0A => X"0000fa0400210000a800008800180800100000fd004310e80108002000180800",
|
||||
INIT_0B => X"0000000000000000000000000000000000000000000000101020000020708408",
|
||||
INIT_0C => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0D => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
INIT_0E => X"0000000000000000000000000000000000000000000000000000000000000000",
|
||||
|
||||
@@ -18,9 +18,9 @@ vcom -93 -work work ../uart.vhd
|
||||
vcom -93 -work work ../ram_image.vhd
|
||||
vcom -93 -work work ../plasma_TB.vhd
|
||||
|
||||
vsim -t 1ps tbench
|
||||
view wave
|
||||
#add wave *
|
||||
vsim -t 1ps plasma_tb
|
||||
#view wave
|
||||
add wave *
|
||||
do wave.do
|
||||
|
||||
view structure
|
||||
|
||||
Reference in New Issue
Block a user