Skip to main content
NNagy.1
Associate III
May 15, 2020
Question

Please help with my FMC ADDSET and DATASET calculations?

  • May 15, 2020
  • 0 replies
  • 1080 views

I've been trying for some time now to get my F767ZI writing to an ILI9341 8080 LCD.

The equations detailed in the AN2790 datasheet:

(1) DATASET*tHCLK = tWP

(2) ((ADDSET+1) + (DATASET+1))*tHCLK >= MAX(tWC)

(3) DATASET >= ((tAVQV + tsu(Data_NE) + tv(A_NE))/tHCLK) - ADDSET - 4

I am not super confident I am applying all these equations properly, though.

My system is running at 168MHz (tHCLK = 5.95ns).

Here's the data for 8080 timings for the ILI9341 (found on page 226 of the ILI9341 datasheet):

tWC >= 66ns

tWRL (write low pulse width) = tWRH (write high pulse width) >= 15ns

tRAT (read access time) <= 40ns

And here's some data for the values in (3) that I found from here

(https://www.st.com/resource/en/datasheet/stm32f767zi.pdf:(

tv(A_NE) = 0

tsu(Data_NE) >= tHCLK - 1

Assumptions:

tWP = tWRL = tWRH

tAVQV = tRAT = 40ns (??)

I can't find tAVQV anywhere. It's defined as "address valid to output valid time", but I'm not sure where to deduce that. I'm using "read access time" right now as a fill-in value?

Equation 1:

DATASET = tWP / tHCLK = (15ns / 5.95ns) ~= 2

Equation 2:

ADDSET + DATASET + 2 >= tWC/tHCLK

ADDSET + 4 >= (66/5.95)

ADDSET >= 7

Equation 3:

ADDSET + 6 >= (tAVQV + tsu(Data_NE) + tv(A_NE))/tHCLK

ADDSET + 6 >= 44.95/5.95

ADDSET >= 1

So all in all I find that DATASET = 2, and ADDSET >= 7.

Did I screw up anywhere?

This topic has been closed for replies.