问答

汇集网友智慧,解决技术难题

21ic问答首页 - TAG - Quartus
  • 求助FPGA状态机的条件always0和!always0是什么?(quartus II生成)

    [i=s] 本帖最后由 泼墨染笛香 于 2025-1-8 20:58 编辑 [/i] [align=left][font=宋体][color=#000][font=宋体][size=12pt]问题[/size][/font][/color][/font][font=Times New Roman][color=#000][size=12pt]1[/size][/color][/font][font=宋体][color=#000][font=宋体][size=12pt]:生成的状态机表格中[/size][/font][/color][/font][font=Times New Roman][color=#000][size=12pt]always0[/size][/color][/font][font=宋体][color=#000][font=宋体][size=12pt]和[/size][/font][/color][/font][font=Times New Roman][color=#000][size=12pt]!always0[/size][/color][/font][font=宋体][color=#000][font=宋体][size=12pt]是什么条件[/size][/font][/color][/font][font=Times New Roman][color=#000][size=12pt]?[/size][/color][/font][/align][align=left][align=left][font=宋体] 前几个源状态的跳转条件都是两个输入变量[/font]pi_money_half[font=宋体]和[/font][font=Times New Roman]pi_money_one[/font][font=宋体]的组合。[/font][/align][align=left][font=宋体] 那么源状态[/font]TWO[font=宋体]跳转的条件[/font][font=Times New Roman]always0[/font][font=宋体]和[/font][font=Times New Roman]!always0[/font][font=宋体]也应该是它俩的组合吧?分别对应什么?[/font][/align][/align][align=left][attach]2351084[/attach][/align][align=left][font=宋体]问题[/font]2:[font=宋体]为什么下面两组代码生成的结果不一样?[/font][color=#191b1f][size=15px][font=宋体]其中[/font][/size][/color][color=#191b1f][font=-apple-system, BlinkMacSystemFont, "][size=15px]pi_money = {pi_money_one, pi_money_half};[/size][/font][/color][/align][align=left][attach]2351086[/attach][/align] [align=left][attach]2351088[/attach][/align] [align=left]代码见下方(quartus II中编译后查看"Analysis & Synthesis"-"Netlist Viewers"-"State Machine Viewer")[/align] `timescale 1ns/1ns module complex_fsm ( input wire sys_clk , //系统时钟50MHz input wire sys_rst_n , //全局复位 input wire pi_money_one , //投币1元 input wire pi_money_half //投币0.5元 ); //只有五种状态,使用独热码 parameter IDLE = 5'b00001; parameter HALF = 5'b00010; parameter ONE = 5'b00100; parameter ONE_HALF = 5'b01000; parameter TWO = 5'b10000; reg [4:0] state; wire [1:0] pi_money; assign pi_money = {pi_money_one, pi_money_half}; always@(posedge sys_clk or negedge sys_rst_n) if(sys_rst_n == 1'b0) state <= IDLE; //任何情况下只要按复位就回到初始状态 else case(state) IDLE :if(pi_money == 2'b01) state <= HALF; else if(pi_money == 2'b10) state <= ONE; else state <= IDLE; HALF :if(pi_money == 2'b01) state <= ONE; else if(pi_money == 2'b10) state <= ONE_HALF; else state <= HALF; ONE :if(pi_money == 2'b01) state <= ONE_HALF; else if(pi_money == 2'b10) state <= TWO; else state <= ONE; ONE_HALF:if(pi_money == 2'b01) state <= TWO; else if(pi_money == 2'b10) state <= IDLE; else state <= ONE_HALF; //情况1 合理 // TWO :if((pi_money == 2'b01)) // state <= IDLE; //01 // else // state <= TWO; //x0 11 //情况2 合理 // TWO :if((pi_money == 2'b10)) // state <= IDLE; //10 // else // state <= TWO; //x0 11 //情况3.1 不懂 TWO :if((pi_money == 2'b01) || (pi_money == 2'b10)) state <= IDLE; //always0。不该是10 01? else state <= TWO; //!always0。不该是00 11? //情况3.2。3.2和3.1不等价?生成状态机表格与3.1不同。不懂。 // TWO :if((pi_money == 2'b01) || (pi_money == 2'b10)) // state <= IDLE; //01 10 // else if((pi_money == 2'b00) || (pi_money == 2'b11)) // state <= TWO; //00 11 default : state <= IDLE;//跳转到编码的状态之外也回到初始状态 endcase endmodule

    FPGA verilog Quartus 状态机

    1753浏览量 1回复量 关注量
  • quartus run tcl file报错 sos 赏300家园币

    quartus run tcl file报错:The error is#args:should be"_source?-encoding name? filename" 这个问题怎么解决

    Quartus

    9759浏览量 0回复量 关注量
  • 关于modelsim的仿真问题。 sos

    [i=s] 本帖最后由 awbl 于 2023-8-26 17:40 编辑 [/i] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "]在跟着B站视频学习到FIR时,仿真遇到问题。[/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "]1、quartus版本:Quartus (Quartus Prime 18.1) Lite Edition[/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "]2、modelsim是从altera官网下载的pro 18.1 ,已经解锁。[/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "]3、联合仿真时出现以下错误: [/font][/backcolor][/color][img=600,0]http://www.fpgabbs.cn/data/attachment/forum/202308/25/171117k153sus5p2i5js3l.png[/img] [align=left][font=Arial][float=right] [/float][/font][/align][color=#444444][backcolor=rgb(255, 255, 255)][/backcolor][/color][img=598,0]http://www.fpgabbs.cn/data/attachment/forum/202308/25/171117z64f68j1o6tf0jz6.png[/img][color=#444444][backcolor=rgb(255, 255, 255)][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "]4、单独仿真时出现以下错误: [/font][/backcolor][/color][img=600,0]http://www.fpgabbs.cn/data/attachment/forum/202308/25/171142uglnnhinm9ph5mnm.png[/img] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "]诸位大佬指点迷经,感激不尽[/font][/backcolor][/color]{:cry:}

    UART Quartus 仿真 modelsim FPGA

    3992浏览量 0回复量 关注量
  • quartus ii9.0里面添加器件库显示不出选项

    1、quartus ii9.0里面添加器件库的时候,tool-->install device显示不出来怎么办?2、quartus ii软件使用的器件库必须和版本匹配是吗?(因为在Intel官网有各种版本的cyclone版本) 下载视频

    Quartus 器件库 quartusII cyclone ev

    1578浏览量 2回复量 关注量
  • 如何获得quartus prime 软件的综合库(Synthesis Library)?

    [color=#444444][backcolor=rgb(222, 240, 251)][font=Tahoma, "][size=16px]有谁知道quartus prime 18.1 的综合库(Synthesis Library)如何获得吗? 就是里面主要包含了引脚的功能(function)、短路功耗(internal_power)、时序信息(timing)、输出的最大负载(max_capacitance)等信息。[/size][/font][/backcolor][/color]

    软件 synthesis Quartus prime library

    1208浏览量 3回复量 关注量