Coder Social home page Coder Social logo

logicbone's People

Contributors

oskirby avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

logicbone's Issues

Finish testing prototype hardware

The list of things yet to be tested on the prototype boards before we should start looking into the next revision

  • Micro-SD card slot.
  • Downstream-Facing USB port detection and power management.
  • Downstream-Facing USB port SERDES support (test out https://github.com/enjoy-digital/usb3_pipe)
  • Analog-to-Digital converter.
  • m.2 PCIe SERDES support.
  • Gather noise and current measurements for VCORE and VDDR supplies.
  • LiteX support for 2GB memory size.

Create BOM

Chase down supplier links for everything on the board to make sure nothing has magically gone out of stock and to get some estimates on pricing.

ECP5 has no means to reset itself

It seems that there are three ways in which the ECP5 can reset itself in order to handle multi-boot images:

  • VCC, VCCAUX and VCCIO8 rise above their POR thresholds.
  • Rising edge on PROGRAMN pin
  • Issuing a REFRESH command over SPI slave or JTAG ports.

I was hoping that one of the config ports would have been accessible internally from the FPGA fabric to issue the REFRESH command, but this doesn't appear to be the case so instead we'll need to bodge the board so that the FPGA can pull the PROGRAMN pin.

On the prototypes, we will work around the issue by removing IC12 and bridging ETH_RESET to SYS_RESET. This will allow the ETH_RESET pin to reboot the FPGA, but we loose the ability to reset the ethernet PHY independently of the rest of the system.

A better solution would be to pull SYS_RESET low via one of the unused pins in the DDR3 bank.

MDIO Data line needs a pullup

MDIO is an open drain bus, and the FPGA's internal pullup is too weak to drive the bus correctly. Adding a 5k pullup allows us to detect and read the MDIO registers.

I can add your board to IceStudio IDE

Hello I am a FPGA developer

If you want to add your board to IceStudio you only have to send me one board, and I am glad to include the board in the supported list of boards of this IDE.

IceStudio is a visual editor for open FPGA boards
https://icestudio.io/

I have already added different boards with ECP5 Lattice Model to ICEStudio
Colorlight boards --> FPGAwars/icestudio#500
FleaFPGA-Ohm ECP5 board --> FPGAwars/icestudio#521
and ECP-5 Evaluation Board --> FPGAwars/icestudio#541

My email is benitoss@gmail,com if you are interested

Rergards
Fernando

DDR3 DM are a complete mess (multiple problems).

While trying to synthesize using LiteDram, we get an error that pin DDR3_DM1 is not located in the same DQS group as the rest of the high DQS bank (it appears to be using a DQSBUFM hard IP to control this signal). This presumeably means that the data mask signals also need to be length matched with their DQS groups too.

PMIC 5VSYS pin is a power input (not output)

The MxL7704 datasheet leaves the purpose of the 5VSYS pin a bit ambiguous as to whether it is internally connected to VIN, or whether it's requires an external RC filter to VIN. Turns out it needs an external RC filter. We can work around it on the prototypes by bodging a 10ohm resistor between 5VSYS and VBUS, but this should be fixed for future production runs.

Validate ECP5 pinout

The caBGA381 is a big package, with a lot of balls. That's a lot of data entry that is ripe for user error and we should take some time to review the pinout to make sure its correct before manufacturing begins.

We also need to pay attention to compatibility between logic sizes, and the ECP5-5G variants to get an idea of which parts can be substituted.

Bad part choices (prototype run)

This issue is mostly just to keep a list of parts that we might want to change out if we get a chance.

Designators Part Issue
IC7 FPF2595 0.4mm pitch CSP package is a little too fine. Our stencil manufacturer has raised concerns about yield.
L4, L2 0805 Inductor High current inductors for VCORE and VDDR are a little hard to source in this size. Suggest using a larger footprint to increase options and reduce cost.
RN1, RN2, RN3 EXB-D10C470J Panasonic seems to be the only vendor for this particular footprint, which might lead to supply issues for future production runs. The 2x5 pin rectangular arrangement seems to be more common.

Add a second oscillator

The 25MHz crystal used to generate the PCIe and DDR3 clocks is coprime with the desired frequency needed for the USB bootloader (48MHz) which leads to some awkwardness in the PLL configuration. In retrospect it may have made more sense to just include a spare 12-ish MHz oscillator for assorted programming uses.

P8 eMMC pinouts are incorrect

It seems that there is an discrepancy in the Beaglebone Black reference manual, and the schematic. The SRM states that P8 pins 11 through 21 are used for the eMMC and shouldn't be used by the capes when the eMMC is in use, but the Beaglebone schematics show P8 pins 3-6 and 20-25 are used by the eMMC.

Unfortunately, the Logicbone was laid out according to the reference manual, which means that we won't be compatible with capes that make use of P8 pins 11-21 such as the CRAMPS board or 24-bit LCD displays.

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.