Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

logi-edu demo doesn't work properly for board R1.1 #21

Open
davidlawson opened this issue May 21, 2015 · 1 comment
Open

logi-edu demo doesn't work properly for board R1.1 #21

davidlawson opened this issue May 21, 2015 · 1 comment

Comments

@davidlawson
Copy link

logi_edu_demo.vhd needs to contain the following modified PMOD signals for the R1.1 board for things to work properly. I'm not sure how to create a VHDL file with some sort of constant that switches things for different boards...

    PMOD1(3) <= vga_out(9);     --hsync_vga ; VGA_HS
    PMOD1(7) <= vga_out(10);    --vsync_vga ;   VGA_VS
    PMOD1(0) <= vga_out(2);     --red_vga(2);   VGA_R2
    PMOD1(4) <= vga_out(1);     --red_vga(1);   VGA_R1
    PMOD2(4) <= vga_out(0);     --red_vga(0); VGA_R0
    PMOD1(1) <= vga_out(5);     --green_vga(2); VGA_G2
    PMOD1(5) <= vga_out(4);     --green_vga(1); VGA_G1
    PMOD2(3) <= vga_out(3);     --green_vga(0); VGA_G0
    PMOD1(2) <= vga_out(8);     --blue_vga(2); VGA_B2
    PMOD1(6) <= vga_out(7);     --blue_vga(1); VGA_B1
    PMOD2(0) <= vga_out(6);     --blue_vga(0); VGA_B0

    PMOD2(5) <= sseg_edu_cathode_out(0); -- cathode 0 SEG_CRTL_A1
    PMOD2(1) <= sseg_edu_cathode_out(1); -- cathode 1 SEG_CTRL_A2
    PMOD3(0) <= sseg_edu_cathode_out(2); -- cathode 2 SEG_CTRL_A3
    PMOD3(1) <= sseg_edu_cathode_out(3); -- cathode 3 SEG_CTRL_A4
    PMOD2(2) <= '0'; -- cathode 4 SEG_CTRL_L?
    PMOD3(6) <= sseg_edu_anode_out(0); --A SSEG0_A
    PMOD3(5) <= sseg_edu_anode_out(1); --B SSEG1_B
    PMOD3(3) <= sseg_edu_anode_out(2); --C SSEG2_C
    PMOD2(6) <= sseg_edu_anode_out(3); --D SSEG3_D
    PMOD2(7) <= sseg_edu_anode_out(4); --E SSEG4_E
    PMOD3(7) <= sseg_edu_anode_out(5); --F SSEG5_F
    PMOD3(2) <= sseg_edu_anode_out(6); --G SSEG6_G
    PMOD3(4) <= sseg_edu_anode_out(7); --DP SSEG7_DP
@jpiat
Copy link
Contributor

jpiat commented May 21, 2015

You can have a constant in your HDL that is then your to generate a different configuration based on the board.

First declare a logi variant type and then the board variant for a specific board :

type logi_variant_type is (V1_1, V1_5);
constant board_variant :  logi_variant_type := V1_1;

then when doing the board specific assignment :

gen__v1_1 : if board_variant = V1_1 generate 

-- board specific code

end generate ;

we could have the board type in a package file somewhere in logi-hard.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants