|
From: Stephen W. <st...@ic...> - 2015-03-06 22:14:27
|
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
INDEXED part select can be non-constant.
The width part of index part select must be strictly constant.
Regular part select indices must be strictly constant. I think
if we don't use the work "indexed" then the part select is the
regular kind. Is that really what you mean, Orson?
On 03/06/2015 12:32 PM, Larry Doolittle wrote:
> Orson -
>
> On Fri, Mar 06, 2015 at 08:57:35PM +0100, Maciej Sumiński wrote:
>> I had to correct the previous implementation for accessing
>> constant arrays of vectors. I did not realize that ranges in part
>> selection have to be constant, and variables are simply forbidden
>> even if the difference between indices is constant. This makes
>> the solution useless if one wants to implement e.g. a
>> multiplexer.
>
> Maybe I don't fully understand the terminology, but I build
> multiplexers "all the time" using indexed part select, e.g.,
>
> module foo( input clk, input [3:0] ipn, output reg [7:0] ip1 ); reg
> [127:0] local_data; // stuff to set local_data not shown always
> @(posedge clk) ip1 <= local_data[{ipn,3'b0}+:8]; endmodule
>
> - Larry
>
> ------------------------------------------------------------------------------
>
>
Dive into the World of Parallel Programming The Go Parallel Website,
sponsored
> by Intel and developed in partnership with Slashdot Media, is your
> hub for all things parallel software development, from weekly
> thought leadership blogs to news, videos, case studies, tutorials
> and more. Take a look and join the conversation now.
> http://goparallel.sourceforge.net/
> _______________________________________________ Iverilog-devel
> mailing list Ive...@li...
> https://lists.sourceforge.net/lists/listinfo/iverilog-devel
>
- --
Steve Williams "The woods are lovely, dark and deep.
steve at icarus.com But I have promises to keep,
http://www.icarus.com and lines to code before I sleep,
http://www.picturel.com And lines to code before I sleep."
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iEYEARECAAYFAlT6JrgACgkQrPt1Sc2b3ilmSQCgpaNTt5LT/iIKRPt4OuczemLw
2mMAn1RUS/62mHnOppzTmDbkkAY2dtV6
=lzgP
-----END PGP SIGNATURE-----
|