I like your breakdown. But the fact that it is a softcore is not related. We do 
not need to compile it to an HDL.
We need it to be compiled to the binary format that the Microblaze support.

Now, after one full version is working as a software, it is possible to 
optimize part of NumPy by having those part synthesized to hardware.
But from my understanding, it wasn't the question. This would be a bigger 
effort and I suppose there is no guide from NumPy on how to do this.

Frederic

-----Original Message-----
From: NumPy-Discussion 
<numpy-discussion-bounces+fbastien=nvidia....@python.org> On Behalf Of Matti 
Picus
Sent: Thursday, January 9, 2020 5:34 PM
To: numpy-discussion@python.org
Subject: Re: [Numpy-discussion] Numpy support for Microblaze

External email: Use caution opening links or attachments


On 9/1/20 10:03 pm, pnp wrote:
> Are there some steps to add support to a new cpu such as microblaze?
>
> Regards.
>
>
>
> --
> Sent from: http://numpy-discussion.10968.n7.nabble.com/
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@python.org
> https://mail.python.org/mailman/listinfo/numpy-discussion


I don't think we have a documented procedure for adding a new CPU
architecture: it is not that common.

The microblaze is a soft core built in HDL, targeting an FPGA. I would try to 
break the question into three parts:

- Does the python support for the microblaze implement any the Python C-API?

- Does the C compiler for microblase support enough of the c99 language so that 
NumPy can be synthesized?

and once NumPy is running:

- Are there acceleration libraries that could supply a BLAS-like interface?


My approach would be to "make it run" then "make it fast", but I doubt the 
high-level (c) tools are up to the task of sythesizing the NumPy C code to HDL 
without alot of work.

It might be better to approach this task in a different direction: take one of 
the NumPy-like projects (CuPy might be a good starting point) and rewrite the C 
code parts in a way that can be synthesized.

Matti

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@python.org
https://mail.python.org/mailman/listinfo/numpy-discussion
-----------------------------------------------------------------------------------
This email message is for the sole use of the intended recipient(s) and may 
contain
confidential information.  Any unauthorized review, use, disclosure or 
distribution
is prohibited.  If you are not the intended recipient, please contact the 
sender by
reply email and destroy all copies of the original message.
-----------------------------------------------------------------------------------
_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@python.org
https://mail.python.org/mailman/listinfo/numpy-discussion

Reply via email to