Quartus ошибка 12014

I’m designing a relatively simple circuit. Using two 4 to 2 encoders to realize an 8 to 3 encoder. Only been learning VHDL the last month. I don’t know what this error means. I’ve done similar circuits without error so I’m not sure what the difference is. 

 

Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value 

Error (12015): Net is fed by «ENCODER4X2:M1|a» 

Error (12015): Net is fed by «ENCODER4X2:M2|a» 

Error (12014): Net «b», which fans out to «b», cannot be assigned more than one value 

Error (12015): Net is fed by «ENCODER4X2:M1|b» 

Error (12015): Net is fed by «ENCODER4X2:M2|b» 

   

top design: 

LIBRARY ieee; 

USE ieee.std_logic_1164.all; 

  

Entity ENCODER8X3 IS 

PORT (i0, i1, i2, i3, i4, i5, i6, i7 : IN STD_LOGIC; 

error 12014 -> a, b, c, d : OUT STD_LOGIC); 

END ENCODER8X3; 

  

ARCHITECTURE STRUCT OF ENCODER8X3 IS 

signal w1 : std_LOGIC; 

COMPONENT ENCODER4X2 

PORT (i0, i1, i2, i3 : IN STD_LOGIC; 

a, b, c : OUT STD_LOGIC); 

END COMPONENT; 

    

BEGIN 

w1 <= not (i0 OR i2 OR i4 OR i6); 

  

M1: ENCODER4X2 PORT MAP (i0, i2, i4, i6, a, b, w1);  

M2: ENCODER4X2 PORT MAP (i1, i3, i5, i7, a, b, d); 

END STRUCT; 

  

slave device: 

LIBRARY ieee; 

USE ieee.std_logic_1164.all; 

  

ENTITY ENCODER4X2 IS 

PORT (i0, i1, i2, i3 : IN STD_LOGIC; 

&#8203;error 12015 -> a, b, c : OUT STD_LOGIC); 

END ENCODER4X2; 

  

ARCHITECTURE STRUCT OF ENCODER4X2 IS  

BEGIN 

a <= i3 OR i2; 

b <= (i1 AND (NOT i2)) OR i3; 

c <= i0 OR i1 OR i2 OR i3; 

END STRUCT; 

  

It’s probably some stupid mistake that I’m overlooking. I hope so. Any help is appreciated.

I am trying to design an 8-bit multiplier based on 4-bit multiplier. so this is my code:

module _8bit_multiply(a, b, q);

input [7:0] a;
input [7:0] b;

output [15:0] q;

wire [7:0] q0;
wire [7:0] q1;
wire [11:0] q2;
wire [11:0] q3;
wire [7:0] x0;
wire [11:0] x1;
wire [7:0] sum0;
wire [12:0] sum1;
wire [12:0] sum2;
wire co0;
wire co1;
wire temp;

_4bit_multiply m1(a[3:0], b[3:0], q0);

assign q[3:0] = q0[3:0];
assign x0[3:0] = q0[7:4];

_4bit_multiply m2(a[7:4], b[3:0], q1);

nbit_adder s1(x0, q1, 0, sum0, co0);

_4bit_multiply m3(a[3:0], b[7:4], q2);
_4bit_multiply m4(a[7:4], b[7:4], x1);

assign q3[11:4] = x1[7:0];

nbit_adder s2(q2, q3, 0, sum1, co1);

nbit_adder s3(sum0, sum1, co0, sum2, temp);
nbit_adder s4(sum2, 0, co1, sum2, temp);

assign q[15:4] = sum2[12:0];

endmodule

then I get this error:

Error (12014): Net «sum2[11]», which fans out to «q[15]», cannot be
assigned more than one value

Error (12015): Net is fed by «nbit_adder:s3|s[11]» Error (12015):

Net is fed by «nbit_adder:s4|s[11]»

And more than like this. what should I do ?

I’m designing a relatively simple circuit. Using two 4 to 2 encoders to realize an 8 to 3 encoder. Only been learning VHDL the last month. I don’t know what this error means. I’ve done similar circuits without error so I’m not sure what the difference is. 

Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value 

Error (12015): Net is fed by «ENCODER4X2:M1|a» 

Error (12015): Net is fed by «ENCODER4X2:M2|a» 

Error (12014): Net «b», which fans out to «b», cannot be assigned more than one value 

Error (12015): Net is fed by «ENCODER4X2:M1|b» 

Error (12015): Net is fed by «ENCODER4X2:M2|b» 

top design: 

LIBRARY ieee; 

USE ieee.std_logic_1164.all; 

Entity ENCODER8X3 IS 

PORT (i0, i1, i2, i3, i4, i5, i6, i7 : IN STD_LOGIC; 

error 12014 -> a, b, c, d : OUT STD_LOGIC); 

END ENCODER8X3; 

ARCHITECTURE STRUCT OF ENCODER8X3 IS 

signal w1 : std_LOGIC; 

COMPONENT ENCODER4X2 

PORT (i0, i1, i2, i3 : IN STD_LOGIC; 

a, b, c : OUT STD_LOGIC); 

END COMPONENT; 

BEGIN 

w1 <= not (i0 OR i2 OR i4 OR i6); 

M1: ENCODER4X2 PORT MAP (i0, i2, i4, i6, a, b, w1);  

M2: ENCODER4X2 PORT MAP (i1, i3, i5, i7, a, b, d); 

END STRUCT; 

slave device: 

LIBRARY ieee; 

USE ieee.std_logic_1164.all; 

ENTITY ENCODER4X2 IS 

PORT (i0, i1, i2, i3 : IN STD_LOGIC; 

​error 12015 -> a, b, c : OUT STD_LOGIC); 

END ENCODER4X2; 

ARCHITECTURE STRUCT OF ENCODER4X2 IS  

BEGIN 

a <= i3 OR i2; 

b <= (i1 AND (NOT i2)) OR i3; 

c <= i0 OR i1 OR i2 OR i3; 

END STRUCT; 

It’s probably some stupid mistake that I’m overlooking. I hope so. Any help is appreciated.

Содержание

  1. Error net is fed by
  2. Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value
  3. Error net is fed by
  4. Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value
  5. Strange error in Quartus II 3.0
  6. Panic
  7. Help needed on VHDL code.
  8. kokei74
  9. kvingle
  10. kokei74
  11. kvingle
  12. kokei74
  13. kokei74
  14. Error net is fed by
  15. Warning (15610): No output dependent on input pin

Error net is fed by

Success! Subscription added.

Success! Subscription removed.

Sorry, you must verify to complete this action. Please click the verification link in your email. You may re-send via your profile.

  • Intel Communities
  • Product Support Forums
  • FPGA
  • Intel® Quartus® Prime Software
  • Re: Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value

Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value

  • Subscribe to RSS Feed
  • Mark Topic as New
  • Mark Topic as Read
  • Float this Topic for Current User
  • Bookmark
  • Subscribe
  • Mute
  • Printer Friendly Page
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

I’m designing a relatively simple circuit. Using two 4 to 2 encoders to realize an 8 to 3 encoder. Only been learning VHDL the last month. I don’t know what this error means. I’ve done similar circuits without error so I’m not sure what the difference is.

Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value

Error (12015): Net is fed by «ENCODER4X2:M1|a»

Error (12015): Net is fed by «ENCODER4X2:M2|a»

Error (12014): Net «b», which fans out to «b», cannot be assigned more than one value

Error (12015): Net is fed by «ENCODER4X2:M1|b»

Error (12015): Net is fed by «ENCODER4X2:M2|b»

Entity ENCODER8X3 IS

PORT (i0, i1, i2, i3, i4, i5, i6, i7 : IN STD_LOGIC;

error 12014 -> a, b, c, d : OUT STD_LOGIC);

Источник

Error net is fed by

Success! Subscription added.

Success! Subscription removed.

Sorry, you must verify to complete this action. Please click the verification link in your email. You may re-send via your profile.

  • Intel Communities
  • Product Support Forums
  • FPGA
  • Intel® Quartus® Prime Software
  • Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value

Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value

  • Subscribe to RSS Feed
  • Mark Topic as New
  • Mark Topic as Read
  • Float this Topic for Current User
  • Bookmark
  • Subscribe
  • Mute
  • Printer Friendly Page
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

I’m designing a relatively simple circuit. Using two 4 to 2 encoders to realize an 8 to 3 encoder. Only been learning VHDL the last month. I don’t know what this error means. I’ve done similar circuits without error so I’m not sure what the difference is.

Error (12014): Net «a», which fans out to «a», cannot be assigned more than one value

Error (12015): Net is fed by «ENCODER4X2:M1|a»

Error (12015): Net is fed by «ENCODER4X2:M2|a»

Error (12014): Net «b», which fans out to «b», cannot be assigned more than one value

Error (12015): Net is fed by «ENCODER4X2:M1|b»

Error (12015): Net is fed by «ENCODER4X2:M2|b»

Entity ENCODER8X3 IS

PORT (i0, i1, i2, i3, i4, i5, i6, i7 : IN STD_LOGIC;

error 12014 -> a, b, c, d : OUT STD_LOGIC);

Источник

Strange error in Quartus II 3.0

Panic

After searching for the source of an error for quite a long time, I’ve
decided that I need some help, and once again you guys drew the shortest
straw 😉

I have a 8 bit DFF with output q[7..0]. This feeds the net
dff_inst23_out[7..0]. (The reason this net is given this name, was to see if
the error actually was located where I thought it was, since the original
error pointed to some temp net.) Both the DFF output and the net is 8 bits
wide, and still I get this error message:

Error: Net dff_inst23_out[6] cannot be assigned more than one value
Error: Net is fed by std_8bit_dff0:inst8|lpm_ff:lpm_ff_component|dffs[6]
Error: Net is fed by std_8bit_dff0:inst9|lpm_ff:lpm_ff_component|dffs[6]
Error: Net is fed by std_8bit_dff0:inst23|lpm_ff:lpm_ff_component|dffs[6]

This is repeated for each bit of dff_inst23_out.

Ok, so I have two other registers that feed this net, but they are not
connected! I understand that this is happening because the output of these
other registers are the same as the inst23 one, but hey, I’ve got more
registers like that, all over the place! So why is this happening to this
particular net?

I’ve taken a screenshot of the design in question, and my troublesome net is
the blue stub:
http://www.battlefield.no/bilder/inst23.gif

Any suggestions would be appreaciated!
Sincerely
-«Panic»

Источник

Help needed on VHDL code.

kokei74

Junior Member level 3

hi, im quite new to VHDL and currently is learning now. I try to create a D flip flop with enable from a D flip flop using a port map.

here is VHDL for DFF

library ieee;
use ieee.std_logic_1164.all;

entity dfflop is
port (D,clock :IN std_logic;
Q :OUT std_logic);
end dfflop;

architecture logic of dfflop is
begin
process (clock)
begin
if clock’event AND clock = ‘1’ THEN
Q

kvingle

Full Member level 5

You are getting this error because you are trying to read the output port Qo which is not permitted .
Solve this by defining an internal signal. below is the code.

kokei74

Junior Member level 3

i tried to used ur code but error still occur.

0″, which fans out to «Q0», cannot be assigned more than one value
Error: Net is fed by «comb

0″
Error: Net is fed by «dfflop:stage0|Q»

what thus that mean?

kvingle

Full Member level 5

kokei74

Junior Member level 3

its work fine. Thx a lot.

but maybe i will need ur help again. Ater this i want to combine this Dff to create a register.

kokei74

Junior Member level 3

hi again..
suppose when EN = 1 the the data on 4 input is transfer into the register with the next positive clock edge. when EN = 0 the current value remains in the register at the next positive clock edge. So EN will determine whether the next pulse accepts new information or leave the information in the register . From my simulation why does the output 0100, 0101, 0110 did`t come out after 0011 but it skip to 0111 and suppose when EN = 0 after that it should preserve 0111 until the next positive clock edge.

VHDL for register

library ieee;
use ieee.std_logic_1164.all;

port ( A :IN std_logic_vector (3 downto 0);
Load,clk :IN std_logic;
X :OUT std_logic_vector (3 downto 0));

architecture logic of reg is

component DFF_en
port (EN,D0,C :IN std_logic;
Q0 :OUT std_logic);
end component;

stage0 : DFF_en port map ( A(0),Load,clk,X(0));
stage1 : DFF_en port map ( A(1),Load,clk,X(1));
stage2 : DFF_en port map ( A(2),Load,clk,X(2));
stage3 : DFF_en port map ( A(3),Load,clk,X(3));

Источник

Error net is fed by

Success! Subscription added.

Success! Subscription removed.

Sorry, you must verify to complete this action. Please click the verification link in your email. You may re-send via your profile.

  • Intel Communities
  • Product Support Forums
  • FPGA
  • Intel® Quartus® Prime Software
  • Warning (15610): No output dependent on input pin

Warning (15610): No output dependent on input pin

  • Subscribe to RSS Feed
  • Mark Topic as New
  • Mark Topic as Read
  • Float this Topic for Current User
  • Bookmark
  • Subscribe
  • Mute
  • Printer Friendly Page
  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

I’m designing a functional unit of DP. I’m getting these warnings for no reason. Is there anybody can help me with it. Any help will be really appreciated.

Note: I attached the project archive.

Warning (15610): No output dependent on input pin «TAU_A»

Warning (15610): No output dependent on input pin «TAU_B»

Warning (15610): No output dependent on input pin «TAU_C»

Warning (15610): No output dependent on input pin «TSR_A»

Warning (15610): No output dependent on input pin «TSR_B»

Warning (15610): No output dependent on input pin «TSR_C»

Warning (15610): No output dependent on input pin «ld_tau»

Warning (15610): No output dependent on input pin «ld_tsr»

Warning (15610): No output dependent on input pin «oper_sel0»

Warning (15610): No output dependent on input pin «oper_sel1»

Warning (15610): No output dependent on input pin «oper_sel2»

Warning (15610): No output dependent on input pin «oper_sel3»

Warning (15610): No output dependent on input pin «oper_sel4»

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

The reason is simple and can be seen in the below always block. There are multiple assignments to each x_bus_out, but only the last takes place.

always @ (TAU_A, TAU_B, TAU_C, TSR_A, TSR_B, TSR_C, TR_A, TR_B, TR_C, tau_w2, tsr_w2, tr_w2) begin if(TAU_A == 1) begin A_bus_out = tau_w2; end else begin A_bus_out = 12’hzzz; end if(TAU_B == 1) B_bus_out = tau_w2; else B_bus_out = 12’hzzz; if(TAU_C == 1) C_bus_out = tau_w2; else C_bus_out = 12’hzzz; ///////////////////////// if(TSR_A == 1) A_bus_out = tsr_w2; else A_bus_out = 12’hzzz; if(TSR_B == 1) B_bus_out = tsr_w2; else B_bus_out = 12’hzzz; if(TSR_C == 1) C_bus_out = tsr_w2; else C_bus_out = 12’hzzz; ////////////////////////// if(TR_A) A_bus_out = tr_w2; else A_bus_out = 12’hzzz; if(TR_B) B_bus_out = tr_w2; else B_bus_out = 12’hzzz; if(TR_C) C_bus_out = tr_w2; else C_bus_out = 12’hzzz; end

You probably meaned to write (and similar for the other outputs):

if(TAU_A == 1) A_bus_out = tau_w2; else if(TSR_A == 1) A_bus_out = tsr_w2; else if(TR_A) A_bus_out = tr_w2; else A_bus_out = 12’hzzz;

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

Thank you so much FvM. Yes, you are right.

The warnings disappeared and it replaced by new errors that do not make sense to me.

I connected the same wire to several blocks and I got these errors.

It shows only for these two blocks that mentioned below. I did the same for others, but it does not show as an error.

I attached the new project and thank you again for your time.

Error (12014): Net «tr_w1[11]», which fans out to «FU_reg:TR_reg_Inst|in0[11]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[23]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[11]»

Error (12014): Net «tr_w1[10]», which fans out to «FU_reg:TR_reg_Inst|in0[10]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[22]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[10]»

Error (12014): Net «tr_w1[9]», which fans out to «FU_reg:TR_reg_Inst|in0[9]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[21]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[9]»

Error (12014): Net «tr_w1[8]», which fans out to «FU_reg:TR_reg_Inst|in0[8]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[20]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[8]»

Error (12014): Net «tr_w1[7]», which fans out to «FU_reg:TR_reg_Inst|in0[7]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[19]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[7]»

Error (12014): Net «tr_w1[6]», which fans out to «FU_reg:TR_reg_Inst|in0[6]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[18]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[6]»

Error (12014): Net «tr_w1[5]», which fans out to «FU_reg:TR_reg_Inst|in0[5]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[17]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[5]»

Error (12014): Net «tr_w1[4]», which fans out to «FU_reg:TR_reg_Inst|in0[4]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[16]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[4]»

Error (12014): Net «tr_w1[3]», which fans out to «FU_reg:TR_reg_Inst|in0[3]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[15]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[3]»

Error (12014): Net «tr_w1[2]», which fans out to «FU_reg:TR_reg_Inst|in0[2]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[14]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[2]»

Error (12014): Net «tr_w1[1]», which fans out to «FU_reg:TR_reg_Inst|in0[1]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[13]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[1]»

Error (12014): Net «tr_w1[0]», which fans out to «FU_reg:TR_reg_Inst|in0[0]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_mul_1:amz_mul_1_inst|result[12]»

Error (12015): Net is fed by «amz_div_1:amz_div_1_inst|remain[0]»

Error (12014): Net «overflow_sig», which fans out to «FU_reg:TSR_reg_Inst|in0[9]», cannot be assigned more than one value

Error (12015): Net is fed by «amz_add_sub_1:amz_add_sub_1_inst|overflow»

Error (12015): Net is fed by «amz_log_shift:amz_log_shift_inst|overflow»

Error (12015): Net is fed by «amz_arith_shift:amz_arith_shift_inst|overflow»

Error: Quartus II 64-Bit Analysis & Synthesis was unsuccessful. 40 errors, 1 warning

Error: Peak virtual memory: 435 megabytes

Error: Processing ended: Thu Feb 27 10:34:49 2014

Error: Elapsed time: 00:00:02

Error: Total CPU time (on all processors): 00:00:02

Источник

У меня есть следующий код, и я получаю эту ошибку .. как это исправить?

Я не пишу компоненты. только основной код;

Этот проект предназначен для обычного компьютера mano, и этот файл является своего рода файлом тестового стенда для этого проекта.

Когда я создам проект и попытаюсь синтезировать код, я увижу эти ошибки, и я не знаю, как их исправить.

library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;

entity testbench is
    port
    (
        reset   :in std_logic;
        clk :in std_logic;
        mode    :in std_logic;

        inport  :in std_logic_vector(7 downto 0);
        outport :out std_logic_vector(7 downto 0);

        data    :inout std_logic_vector(15 downto 0);
        address :in std_logic_vector(2 downto 0);
        load    :in std_logic;
        debug   :in std_logic
    );
end testbench;

architecture main of testbench is
    component divider
        port(rst, clkin: in std_logic;
        clkout: out std_logic);
    end component;
    component ram
        port(en, r, w   :in std_logic;
        data        :inout std_logic_vector(15 downto 0);
        address         :in std_logic_vector(2 downto 0));
    end component;
    component microprocessor
        port
        (
            reset   :in std_logic;
            clk     :in std_logic;
            data    :inout std_logic_vector(15 downto 0);
            address     :out std_logic_vector(11 downto 0);
            memr    :out std_logic;
            memw    :out std_logic;
            inport  :in std_logic_vector(7 downto 0);
            outport     :out std_logic_vector(7 downto 0);
            intr_in :in std_logic;              -- interrupt for input
            intr_out    :in std_logic               -- interrupt for output
        );
    end component;
    component ebscu
        port
        (
            mode:       in std_logic;

            mpdata: inout std_logic_vector(15 downto 0);
            mpaddress:  in std_logic_vector(11 downto 0);
            userdata:       inout std_logic_vector(15 downto 0);
            useraddress:    in std_logic_vector(2 downto 0);
            ramdata:    inout std_logic_vector(15 downto 0);
            ramaddress: out std_logic_vector(2 downto 0);

            mpread:     in std_logic;
            mpwrite:        in std_logic;
            userread:       in std_logic;
            userwrite:  in std_logic;
            ramread:        out std_logic;
            ramwrite:       out std_logic
        );
    end component;
    signal internclk        :std_logic;
    signal mpreset      :std_logic;
    signal databus1     :std_logic_vector(15 downto 0);
    signal databus2     :std_logic_vector(15 downto 0);
    signal databus3     :std_logic_vector(15 downto 0);
    signal databus4     :std_logic_vector(15 downto 0);
    signal addressbus1  :std_logic_vector(11 downto 0);
    signal addressbus2  :std_logic_vector(2 downto 0);
    signal read1, write1    :std_logic;
    signal read2, write2    :std_logic;
    signal intr_in, intr_out    :std_logic;

    begin
    mpreset <= reset or mode;
    process(databus1)
        variable busvar: std_logic_vector(15 downto 0);
        begin
        busvar := databus1;
        databus2 <= busvar;
    end process;
    process(databus2)
        variable busvar: std_logic_vector(15 downto 0);
        begin
        busvar := databus2;
        databus1 <= busvar;
    end process;
    process(databus3)
        variable busvar: std_logic_vector(15 downto 0);
        begin
        busvar := databus3;
        databus4 <= busvar;
    end process;
    process(databus4)
        variable busvar: std_logic_vector(15 downto 0);
        begin
        busvar := databus4;
        databus3 <= busvar;
    end process;
    d1: divider         port map(reset, clk, internclk);
    d2: microprocessor  port map(mpreset, internclk, databus1, addressbus1, read1, write1, inport, outport, intr_in, intr_out);
    d3: ebscu       port map(mode, databus2, addressbus1, data, address, databus3, addressbus2, read1, write1, debug, load, read2, write2);
    d4: ram         port map('1', read2, write2, databus4, addressbus2);
end main;

1 ответ

Процессы, которые вы используете для подключения шин данных, не нужны и вызывают ошибку. Удалить их. Вместо использования шины данных1 и шины данных2 вставьте только 1 сигнальный сигнал data_bus_up_ebscu и подключите его к микропроцессору и ebscu. Вместо использования databus3 и databus4 вставьте только 1 сигнальную шину databus_ram_ebscu и подключите ее как к ebscu, так и к ram.


-1

Matthias Schweikart
22 Янв 2023 в 12:48

  • Страница:
  • 1
  • 2

Делал как написано в инструкции начал компилировать и он выдал ошибку.
Схему указал Cyclone III EP3C10E144C8

Warning (20028): Parallel compilation is not licensed and has been disabled
Error (12007): Top-level design entity «Test1_wer» is undefined
Error: Quartus II 32-bit Analysis & Synthesis was unsuccessful. 1 error, 1 warning
Error: Peak virtual memory: 287 megabytes
Error: Processing ended: Thu Nov 14 14:50:57 2013
Error: Elapsed time: 00:00:01
Error: Total CPU time (on all processors): 00:00:01
Error (293001): Quartus II Full Compilation was unsuccessful. 3 errors, 1 warning

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.


Последнее редактирование: от leonem.

Надо назначить фаил Test1_wer.v как Top-level или назвыть фаил так же как и модуль в нём.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Не очень понял назначить фаил Test1_wer.v как Top-level как и где. Файл это Test1_wer.v а что замодуль в нём. Глупые вопросы но что поделаешь.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Э.. Напишите что именно делаете.. Создайте новый проэкт для Марсохода 2? Непонятно вообще откуда у Вас взялось Test1_wer. Что вы так назвали? По ошибкам ясно что у вас ненайден топ модуль. Тоесть нет главного модуля с которого вообще всё начинается и куда подключены входы и выходы.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Как было написано. В создании нового проекта так я и делал просто назвал проект Test1 а файл куда скопировал код Test1_wer ни чего более.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Укажите адрес того урока. А то я что-то не понимаю что вы создаёте и по какой инструкции.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Создание первого проекта компиляция и прошивка платы Марсоход дальше Пошаговая инструкция: создаем проект Quartus II
Дошёл до компиляции.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.


Последнее редактирование: от leonem.

Для какого именно марсохода? Какая именно статья?? Я чтото немогу найти это.. Для первого там рекомендовали стянуть «почти пустой проэкт» а для второго я мевидел инструкцию по созданию проэкта. Приведите на неё линк.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

С боку где написано: как скачать, купить и так далее там есть Altera Quartus II,изучение Altera Quartus II,Создание первого проекта компиляция и прошивка платы Марсоход а дальше идет инструкция но плис я указал не (CPLD) EPM240T100C5 а Cyclone III EP3C10E144C8
там есть код module test_wires(
input wire key0,
input wire key1,
input wire key2,
input wire key3,
output wire led0,
output wire led1
);

assign led0 = key0 & key1;
assign led1 = key2 | key3;

marsohod.org/11-blog/78-newproject

endmodule

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.


Последнее редактирование: от leonem.

Незнаю в чём проблема — только что повторил всё как там написано и у меня всё скомпилировалось без проблем (я делал для 4 циклона) . О настройке топ файла там есть в пункте 13 :) Выбрать фаил в проект менеджеру и выбрать в меню Project > Set As Top Level Entity.

Рекомендуется называть фаил так же как имя модуля в нём. Вот и все проблемы. Больше проблем будет приделать пины к выводам — но это вам надо будет сделать один раз и научиться. Ну или как сделал я — разобрался как это пишется в файле *.QSF и пишу сам руками. Потом это фаил называю так же как топ левел и всё.

Проверте если все файлы упали в правельную директорию с проэктом. Для создания папки проэкта надо добавить название папки к дороге к проэкту. Например я хочу создать проэкт TEST в папке C:/work/:

для этого при создании проэкта пишу в шаге 3:

путь к проэкту C:/work/TEST

и ниже название файла: test
оно само скопируется ниже.

Потом создам новый фаил Verilog HDL и скопирую в него содержимое из статьи и уложу его так как написано — имя будет такое же как имя модуля ( module test_wires )

Если хотите другое имя — назовите и модль так же. Вот и всё :)

И ещё — могут возникнуть проблемы естли в пути есть русские буквы!!! Поэтому путь к проэкту должен быть без русских букв.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.


Последнее редактирование: от wowa.

  • Страница:
  • 1
  • 2

Время создания страницы: 0.243 секунд

Понравилась статья? Поделить с друзьями:
  • Qwinsta server ошибка 5 получения имен сеансов
  • Quantum break ошибка при запуске приложения 0xc0000142
  • Qwedl movies ошибка 201
  • Quint dc ups 10a ошибка
  • Quantum break ошибка msvcp100 dll