OpenCores
URL https://opencores.org/ocsvn/wbddr3/wbddr3/trunk

Subversion Repositories wbddr3

[/] [wbddr3/] [trunk/] [doc/] [src/] [spec.tex] - Diff between revs 2 and 8

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 2 Rev 8
Line 141... Line 141...
\chapter{Architecture}
\chapter{Architecture}
 
 
% This section describes the architecture of the block.  A block level diagram
% This section describes the architecture of the block.  A block level diagram
% should be included describing the top level of the design.
% should be included describing the top level of the design.
 
 
 
\section{Strategies}
 
\subsection{Bank}
 
Currently, banks are activated (opened) when needed and only precharged
 
(closed) upon refresh request.  Further, upon any read or write from one bank,
 
the next bank is activated as well, under the assumption that the next bank
 
will be needed soon.  This is necessary to allow pipeline access with no stalls
 
through the memory controller.
 
 
 
This means that, upon any bank miss, a bank precharge followed by bank activate
 
command will be necessary.
 
 
 
\subsection{Refresh}
 
The current build will pause all operations for four subsequent refreshes,
 
at roughly every 4 refresh intervals, and then allow operations to resume.
 
This pause is independent of anything going on, and includes a mandatory
 
wait for any writes to finish, followed by a precharge command---regardless of
 
whether or not such is required.
 
 
 
This is non-optimal, and ripe for optimizing later.  A better strategy might
 
be to do singular refreshes after any single refresh period assuming the bus
 
is free, to only issue a precharge if the bus is busy, and to only wait
 
prior to that precharge if a write is busy.  This will be a later optimization.
 
 
\chapter{Operation}
\chapter{Operation}
 
 
% This section describes the operation of the core.  Specific sequences, such
% This section describes the operation of the core.  Specific sequences, such
% as startup sequences, as well as the modes and states of the block should be
% as startup sequences, as well as the modes and states of the block should be
% described.
% described.

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.