Giter Club home page Giter Club logo

fppa-pdk-emulator-vhdl's Introduction

------- VHDL FPPA PDK simulation model ------

This project aims to provide a fully functional, timing accurate VHDL model for simulating PAKAUK FPPA microcontrollers.

It is still a work in progress.

Current cores implemented:

PDK14

Current chips supported:

PFS154

-------------------------------- Open questions ----------------------------------

The following questions are yet to be answered:

Q1: Is a "T" cycle a clock cycle, or do instructions take 2 clocks to execute ? The fact that CPU sysclk is at most IHRC/2 seems to point in this direction, however it can also be provided by ILRC and EOSC without a "divider". As of now this prevents implementation of the design (only simulation supported). Some suggest that there might be a PLL inside the chip.

Q2: What is the priority for alternate functions on pins ? For example, on PFS154 PA3 can either be GPIO, TM2PWM or PG2PWM. It is known that GPIO has the lowest priority, but if both TIM2 and PWMG2 are configured for PA3 output, which one gets outputted ? This can be found out by testing a physical chip.

Q3: How are inputs synchronized ? For GPIO the design currently uses 2 FF's clocked by sysclk, but actual implementation is unknown. The synchronization is mandatory to avoid metastability issues.

Q4: How exactly are registers synchronized between the diverse clock domains ? What is the delay between, let's say, setting PWM0GC.4 and actually resetting the PWM counter?

Q5: When switching clocks across the chip, how is the clock output handled to avoid narrow pulses thay might occur ? As of now, a simple multiplexer is used for simulation.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.