M
Martin Euredjian
Guest
So...if you try to create anything other than the trivial sample RPM's
floating about you very quickly discover that your logic can jump all over
the place. This is particularly true of non-slice resources.
So... you read a little blurb about RPM_GRID. Which isn't documented very
well at all.
So... you try it.
And... all sorts of things begin to break.
Naturally, after burning many hours, questions arise:
If you use RPM_GRID at a given hierarchical level, must every RPM'd
submodule instantiated in the lower hierarchies of the module in question
also use RPM_GRID?
Can you mix RPM_GRID and non-RPM_GRID coordinates within a module?
A recommendation I found states that RPM_GRID might be better for
heterogeneous RPM's that include such things as multipliers and that
non-RPM_GRID is more appropriate for RPM's that are limited to slice logic.
True?
If you wanted to RPM something like this:
[LUT][FF] [LUT][FF] [LUT] [MULT]
[LUT][FF] [LUT][FF] [LUT]
[LUT][FF] [LUT][FF] [LUT]
[LUT][FF] [LUT][FF] [LUT]
Before RPM_GRID you might set the RLOC's something like this:
(simplified notation just to put the idea across)
X0Y3 X1Y3 X2Y3 X0Y0
X0Y2 X1Y2 X2Y2
X0Y1 X1Y1 X2Y1
X0Y0 X1Y0 X2Y0
Now, if you instantiate this RPM several times most primitives will do OK,
but it seems that the multiplier RLOC is distorted because the tools apply
the same math as they do to other components. So, everything stops and you
have to figure it out.
How does one deal with this without resorting to RPM_GRID, which does not
seem ready for prime time (see Floorplanner message).
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian
To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_" = "martineu"
floating about you very quickly discover that your logic can jump all over
the place. This is particularly true of non-slice resources.
So... you read a little blurb about RPM_GRID. Which isn't documented very
well at all.
So... you try it.
And... all sorts of things begin to break.
Naturally, after burning many hours, questions arise:
If you use RPM_GRID at a given hierarchical level, must every RPM'd
submodule instantiated in the lower hierarchies of the module in question
also use RPM_GRID?
Can you mix RPM_GRID and non-RPM_GRID coordinates within a module?
A recommendation I found states that RPM_GRID might be better for
heterogeneous RPM's that include such things as multipliers and that
non-RPM_GRID is more appropriate for RPM's that are limited to slice logic.
True?
If you wanted to RPM something like this:
[LUT][FF] [LUT][FF] [LUT] [MULT]
[LUT][FF] [LUT][FF] [LUT]
[LUT][FF] [LUT][FF] [LUT]
[LUT][FF] [LUT][FF] [LUT]
Before RPM_GRID you might set the RLOC's something like this:
(simplified notation just to put the idea across)
X0Y3 X1Y3 X2Y3 X0Y0
X0Y2 X1Y2 X2Y2
X0Y1 X1Y1 X2Y1
X0Y0 X1Y0 X2Y0
Now, if you instantiate this RPM several times most primitives will do OK,
but it seems that the multiplier RLOC is distorted because the tools apply
the same math as they do to other components. So, everything stops and you
have to figure it out.
How does one deal with this without resorting to RPM_GRID, which does not
seem ready for prime time (see Floorplanner message).
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian
To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_" = "martineu"