Git Product home page Git Product logo

ev21g1's Introduction

👋 Hello! I'm Lucas

Hello! I'm Lucas, an Electronics Engineer from the ITBA (Instituto Tecnológico de Buenos Aires). With a versatile background in hardware, software, and firmware, I've had the opportunity to work on various projects. My expertise lies in developing for embedded devices like FPGAs and microcontrollers, where I've utilized languages such as C and C++. Additionally, I'm skilled in capturing schematics and designing PCB layouts using professional tools like Altium Designer.

I'm passionate about learning new skills and solving problems using technology, even more, when it represents a challenge.

🙋‍♂️ Connect with me

LinkedIn followers

📕 Projects I've worked on

Cyclops Catan SpatialMeetings mp3-player cifar100 frogger EV21G1

🛠 Technologies

Docker Linux Node.js TensorFlow Angular Zephyr Altium SolidWorks

🚀 Languages

C C++ Python JavaScript TypeScript VHDL Verilog C#

💻 Github Profile Stats

Anurag's GitHub stats

ev21g1's People

Contributors

jgtn avatar kammann123 avatar matifrancois avatar santiaa avatar scheinpablo avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

ev21g1's Issues

Processors run tests codes

The issue is different form #21, this can be closed if there are several assembly programs prepared and already tested on the FPGA.

Implementation - Clock generation and distribution (Pipeline)

For the pipeline to work, the clock sent to each sequential block in the microarchitecture requires to be out of phase to avoid stability problems. The positive edge of the clock sent to each part of the hardware requires to be separated in time more than the hold time of the latches (among other key units).

Report conventions/glossary

No words should be said as if the reader knows their meaning or is familiar with the terminology. Create a glossary of conventions for each word used, even if it's quite simple.

Implementation - Data Path

The data path refers to the combination of the ALU, the Shifter, the Register Bank, and some other functional blocks used mainly to operate the last three stages of the processor pipeline.

Boot sequence

Although it can be quite simple, we need to define a boot sequence (i think...). For example, ¿is there any reset signal? ¿what is the reset value for the Program Counter?

Docs - Timing diagram (Pipeline)

A timing diagram showing how a machine cycle runs throughout the stages of the processor could be really helpful and useful to ensure we are all in the same page.

Testing - Hardware test of VGA module

  • Can we test the VGA module with a monitor, or do we need some electrical interface between the monitor and the FPGA?
  • Decide whether to test using simulation or hardware
  • Test the VGA module

Testing - Prepare machine code to be run in the processor

We will need to have already prepared programs to run in the processor, maybe an assembler basic compiler could be developed in Python to make it easier for us, because we could create programs using Assembler Language. If so, a recommend creating a directory tools/ for the toolchain.

Data and program memory clock management

They use the same clock, or a particular clock enabled within the CPU? (In case the control units need to stop some operation in both the ROM and the RAM...)

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.