12/5/2023 0 Comments Inferring sequential logic verilogI wish there were more easily google-able discussions like that when it came to hardware synthesis, so that's why I'm asking. I realize that the right answer here is probably "just try it and find out", however, when you google similar questions for programming languages and not HDLs, there are tons of answers about how to drop hints to a compiler to get it to do something smart. The model I'm looking at has 5,280 logic elements, and they look like this: Reg signed pipeline įor reference, I'm aiming at a Lattice iCE40 FPGA at the end of this. Parameter width_numerator = 16, width_denominator = 8, depth = 8 What's a pretty sane number of pipeline stages to offer the compiler? I'd think it would be the number of bits in the denominator (8 in my case).Is the below enough to tell most Verilog compilers to generate a multi-cycle divider with whatever method it wants?.I have 2 questions that I'd like answers to: I suspect that this is possible because there's precedence for this in FPGA toolchains when it comes to inferring hardened, pipelined multiply blocks from constructs that look similar to what I have below ( Xilinx example, Yosys example) I want to tell the compiler "you have X clock cycles in which to deliver me a result". I don't want an insane amount of logic with a huge propagation delay, so I'll obviously have it pipelined. For your example above it would look like this: assign PC PCFetch This would not be in an always block. If you DONT want to use sequential logic, you can use combinatorial (combinational) logic. The fastest the signal will propagate is 1 clock cycle between the two flip flops. I assume that the compiler will be way more clever than me when it comes to implementing the details of the logic, so I want to give it a / sign and just let it be creative. Sequential logic means logic that propagates between two flip flops. I want to synthesize an integer divider in Verilog to divide 16-bit integers by 8-bit integers.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |