Giter Site home page Giter Site logo

Comments (8)

agrobman avatar agrobman commented on June 11, 2024

looks like your memory has only 32 bytes - normally most of the tests need much more than that. Also DemoTB uses all 4GB 32 bit address space to place code and data - from address 0 to address 0xffffffff. TB external slaves are made around "sparse memory model", implemented as associative arrays.

from cores-veer-eh1.

HamzaShabbir517 avatar HamzaShabbir517 commented on June 11, 2024

firstlt i have declare it like reg [31:0] mem [4095:0] but after getting error and lots of search i have convert it to the same format as the memory is define in ahb_sif.sv file. But still the error remains

from cores-veer-eh1.

agrobman avatar agrobman commented on June 11, 2024

how is the memory declared in your TB?

if it's as in your original post, then it is defines 32 bytes memory storage, not sufficient to hold any program.
(with max address of 31)

the memory in DemoTB slaves is defined as associative array:

bit[7:0] mem[bit[31:0]] ;

where index is 32 bit vector.

even if you will define your memory as reg[7:0] mem [1<<16-1:0] (64KB), program.hex, built with current makefile will cause the same error, since some addresses, used in these programs are higher than 64KB.

BTW, in earlier versions of this DB we had slave memories, used static fix size memory arrays ( see earlier git branches),
which similar to RTL memories implementations( and could be synthesized into FPGA), but it placed limitation on the test program address space and made test program compilation more complicated.

You can play with test linker files, CPU memory map defines and objcopy program options to build HEX files, suitable to your TB memories sizes/widths or write ELF loader as a DPI function for verilog.

But usage of associative arrays made test build process much simpler and more natural .

from cores-veer-eh1.

HamzaShabbir517 avatar HamzaShabbir517 commented on June 11, 2024

What if i declare the memory as u mention reg [7:0] mem [1<<16-1:0] but instead of 16 i use 32? Will it be a possible solution. As playing with Makefile is not suitable for me as i am not musch familiar with these makefiles.

from cores-veer-eh1.

agrobman avatar agrobman commented on June 11, 2024

Your server will need > 8GB memory to simulate this...

from cores-veer-eh1.

HamzaShabbir517 avatar HamzaShabbir517 commented on June 11, 2024

Oh ok. So can u provide any solution with respect to this solution u provided or any guide from where i can learn.
//
You can play with test linker files, CPU memory map defines and objcopy program options to build HEX files, suitable to your TB memories sizes/widths or write ELF loader as a DPI function for verilog.
//

from cores-veer-eh1.

agrobman avatar agrobman commented on June 11, 2024

gnu.org - gnu tools portal (binutils documentation - linker, objcopy, gcc , etc)
..objcopy -h
google.com (how to ...)

from cores-veer-eh1.

HamzaShabbir517 avatar HamzaShabbir517 commented on June 11, 2024

ok thanks

from cores-veer-eh1.

Related Issues (20)

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.