[Oberon] Oberon on FPGA - how much does the system "stallx"?

Magnus Karlsson magnus at saanlima.com
Tue May 19 09:39:40 CEST 2015


The pixel clock is 75 MHz and the cpu clock is 25 MHz.  One video fetch 
brings in 32 pixels and lasts about 10 cpu clocks (32/3).  So during the 
display scan line about 10% of the cpu clocks are lost.

If the FPGA has enough internal BRAM to hold the display surface (~ 100 
kB) then that memory area can be designed to have two-port access, i.e. 
the video can access that area independent of the cpu.
The penalty is added code complexity (but not much).  FWIW, this option 
is possible on Pipistrello since it has enough free BRAMs to do this.

Magnus


On 5/18/2015 11:35 AM, Davide Della Casa wrote:
> Hi,
>
> I'm reading on how Oberon of FPGA manages video generation - the 
> chosen way is to have SRAM in common between CPU and video system.
>
> So (reading the docs) the "stallx" line is used to arbitrate: "The 
> signal (wire) dspreq stalls the processor (stallX) and decides whether 
> the memory address (SRAdr) should be taken from the processor (adr) or 
> the display controller (vidadr)".
>
> Now I'm wondering what percentage of time does the CPU stall because 
> of this? Is the CPU only effectively free to work during the 
> "invisible lines" and "beam reset" times? Or is there significant time 
> available while "racing the beam"?
>
> Also I'm curious to know whether alternate solutions could potentially 
> be in the cards to avoid the contention
>
> a) dual port SRAM (too expensive / too many pins needed?)
> b) SRAM used in two "blocks" - one dedicated to screen and other so 
> contention is reduced (too many pins needed?) - potentially with a way 
> for the CPU to know if the "video" block is available.
> c) ...?
>
> (I'd think that such considerations could be worthy of inclusion in 
> the docs by the way)
>
> Any links welcome about other typical arrangements of interest that 
> are found in fpga projects "in the wild" in respect to video management...
>
> Cheers,
> Davide Della Casa
>
>
> --
> Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
> https://lists.inf.ethz.ch/mailman/listinfo/oberon

-------------- next part --------------
An HTML attachment was scrubbed...
URL: https://lists.inf.ethz.ch/pipermail/oberon/attachments/20150519/20990381/attachment.html 


More information about the Oberon mailing list