over 1 year ago

Hello, people.

I should say "Long time no see" since I have not written blogs since about 2 or 3 weeks ago. Sorry for that.

The first evaluation is coming soon. I hope my blog would make it.

Related Source Code

I have opened MEP-111 branch on GitHub for this project. I also opened a PR to the GSoC branch in the upstream.

All the progress of this project can be checked in these problems.

Problems

The front end of fixbv (the part for MyHDL simulation usage) has been roughly implemented by cfelton. Although it has some issues, I may adopt it as a good start.

There are some issues in cfelton's implementation:

  1. At his time of implementation, MyHDL supports only Python 2.x. So the compatibility between 2.x and 3.x has not been considered.
  2. Compiler backend has not been implemented.
  3. In fixbv.__init__, round_mode and overflow_mode were not implemented.
  4. Point alignment has not been implemented.
  5. Many places marked as @todo. Most of them are small problems.

I planned to solve the above issues except 2 before the beginning of July.

Progress

Python 3.x Compatibility

Solved.

Compiler Backend

Conversion is the core issue of this project. Before advancing into this phase, I must solve other issues first.

I am planning to do it in July and August.

Round Mode and Overflow Mode

To be decided.

Should it also be considered while implementing compiler backend?

Point Alignment

Almost finished.

Other Small Problems

Ongoing.

Future Plans

In July, I will implement the compiler backend of fixbv.

In the first 2 weeks of July, I will write conversion tests for fixbv. After that, I will implement the backend of fixbv and write documents for it.

In mid August, this project should be finished.

← GSoC #2: Configuration of Cosimulation GSoC #4: Point Alignment of Fixed-Point Type →