[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [microblaze-uclinux] why such idiv latency of 34 cycles?
Brettschneider Falk wrote:
> maybe a silly question from a newbie:
> has it to be that small?
> What if speed is more important than size?
Not a silly question, it's just that there are as many answers to the
question "smaller or faster?" as there are users.
You might consider building your own divider, as fast and large as you
want, and put an FSL interface on it (put, put, get). Hang it off the
microblaze, tweak your application code to use the FSL channel instead
of regular C divide operator, and enjoy.
Of course, the details can be tricky - how do you serialise access to
this custom HW if you have more than one user process that wants to use
it? Is it cheating for a user app to write directly to FSL HW? Should
you use blocking FSL operations in a time-shared multiprocessing
operating system? I speculated on some of these issues in the following
paper - might be helpful to you:
microblaze-uclinux mailing list
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/