# RV32E Support

**URL:** <https://forums.sifive.com/t/rv32e-support/180>\
**Category:** Freedom E300\
**Created:** [December 12, 2016, 6:15pm UTC](https://forums.sifive.com/t/rv32e-support/180 "2016-12-12T18:15:15Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![donb](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.sifive.com/donb/32/41_2.png) [@donb](https://forums.sifive.com/u/donb)\
**Post date:** [December 12, 2016, 6:15pm UTC](https://forums.sifive.com/t/rv32e-support/180/1 "2016-12-12T18:15:15Z")

</div>

Hello Team,

On the Products web page, the Freedom E300 Platform seems to support the RV32EMC Architecture. Am I correct in presuming this means the E300 supports the RV32E ISA aimed at embedded (uC) systems? Also, does the E300 Arty FPGA dev kit include support for an RV32E “soft microprocessor”?

Thanks for the clarification!  
D

---

<div class="post-metadata">

**Author:** ![jackckang](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.sifive.com/jackckang/32/831_2.png) [@jackckang](https://forums.sifive.com/u/jackckang)\
**Post date:** [December 12, 2016, 7:08pm UTC](https://forums.sifive.com/t/rv32e-support/180/2 "2016-12-12T19:08:48Z")

</div>

Hi Don,

The Freedom E310 chip that has just been released and is available on the HiFive1 dev board supports the RV32I (RV32IMAC to be complete) ISA.

We have the ability to quickly customize items on the E300 platform for custom silicon, and RV32E is one of them.

The E300 Arty FPGA dev kits today currently do not easily support RV32E at this time. The reason for this is because there is very limited software support for RV32E at this time in the community, and we would like to make sure there is a software plan in place before we just throw hardware over the wall.

Please stay tuned for an update on this…

BTW, can you share more info about your interest in RV32E?

---

<div class="post-metadata">

**Author:** ![brucehoult](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.sifive.com/brucehoult/32/24_2.png) [@brucehoult](https://forums.sifive.com/u/brucehoult)\
**Post date:** [December 12, 2016, 7:13pm UTC](https://forums.sifive.com/t/rv32e-support/180/3 "2016-12-12T19:13:28Z")

</div>

Is it not true that if you compile a program together with all required runtime support for RV32E then it will run fine on an RV32I machine? The only difference will be that attempts to use R16-31 will not trap.

---

<div class="post-metadata">

**Author:** ![andrew](https://avatars.discourse-cdn.com/v4/letter/a/f19dbf/32.png) [@andrew](https://forums.sifive.com/u/andrew)\
**Post date:** [December 12, 2016, 7:15pm UTC](https://forums.sifive.com/t/rv32e-support/180/4 "2016-12-12T19:15:40Z")

</div>

Hi Bruce,

RV32E programs will indeed run correctly on RV32I hardware (but note that the ABIs are incompatible, so RV32E code can’t be linked with RV32I code).

Andrew

---

<div class="post-metadata">

**Author:** ![brucehoult](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.sifive.com/brucehoult/32/24_2.png) [@brucehoult](https://forums.sifive.com/u/brucehoult)\
**Post date:** [December 12, 2016, 7:16pm UTC](https://forums.sifive.com/t/rv32e-support/180/5 "2016-12-12T19:16:50Z")

</div>

That’s why I specified “together with all required runtime support”

---

<div class="post-metadata">

**Author:** ![donb](https://sea2.discourse-cdn.com/flex020/user_avatar/forums.sifive.com/donb/32/41_2.png) [@donb](https://forums.sifive.com/u/donb)\
**Post date:** [December 12, 2016, 7:42pm UTC](https://forums.sifive.com/t/rv32e-support/180/6 "2016-12-12T19:42:33Z")

</div>

Hi Jack,

Thanks for the fast response! It’s exciting that the Arty could indeed support RV32E. Our organization has developed a secure operating system designed for IoT endpoints. We believe there is a need for a RV32E uC in the IoT space as it will be a substantial competitor to the ARMv{6,7,8}-M lines. We are interested in evaluating whether we could provide such a chip.

Best,
