Re: [OPAE] Intel Fpga BBB Tutorial

Adler, Michael <michael.adler at intel.com> Thu, 30 May 2019 17:59:29 +0000
Newsgroups dev.linux.lists.opae
Message-ID <[email protected]>
--===============9172114913516358188==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: quoted-printable

Because the MMIO address lines in the hardware don=E2=80=99t include the lo=
w 2 bits. The CCI-P spec. requires that they always be 0 since the minimum =
MMIO granularity is 4 bytes. The software and CPU do have those low 2 bits,=
 so the CPU-side computation differs by a factor of 4.

-Michael

From: OPAE <opae-bounces(a)lists.01.org> on behalf of Abel Eneyew <mul.abel=
43(a)gmail.com>
Date: Thursday, May 30, 2019 at 12:03 PM
To: "opae(a)lists.01.org" <opae(a)lists.01.org>
Subject: [OPAE] Intel Fpga BBB Tutorial

I am at the second part of the tutorial. But I am having difficulties under=
standing the mmio addressing part. Specificallly https://github.com/OPAE/in=
tel-fpga-bbb/blob/master/samples/tutorial/02_platform_ifc/02b_ccip_clock/sw=
/clock_freq_test.c#L226 why do we multiply the address by 4 but in the hard=
ware part  https://github.com/OPAE/intel-fpga-bbb/blob/master/samples/tutor=
ial/02_platform_ifc/02b_ccip_clock/hw/rtl/afu.sv#L150 it isn't multiplied. =
Why do we need to multiply it by 4 in the software part?

Sorry if this is not an interesting question. But I am new and it is confus=
ing.

Regards
Abel

--===============9172114913516358188==
Content-Type: text/html
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="attachment.html"

PGh0bWwgeG1sbnM6bz0idXJuOnNjaGVtYXMtbWljcm9zb2Z0LWNvbTpvZmZpY2U6b2ZmaWNlIiB4
bWxuczp3PSJ1cm46c2NoZW1hcy1taWNyb3NvZnQtY29tOm9mZmljZTp3b3JkIiB4bWxuczptPSJo
dHRwOi8vc2NoZW1hcy5taWNyb3NvZnQuY29tL29mZmljZS8yMDA0LzEyL29tbWwiIHhtbG5zPSJo
dHRwOi8vd3d3LnczLm9yZy9UUi9SRUMtaHRtbDQwIj4NCjxoZWFkPg0KPG1ldGEgaHR0cC1lcXVp
dj0iQ29udGVudC1UeXBlIiBjb250ZW50PSJ0ZXh0L2h0bWw7IGNoYXJzZXQ9dXRmLTgiPg0KPG1l
dGEgbmFtZT0iR2VuZXJhdG9yIiBjb250ZW50PSJNaWNyb3NvZnQgV29yZCAxNSAoZmlsdGVyZWQg
bWVkaXVtKSI+DQo8c3R5bGU+PCEtLQ0KLyogRm9udCBEZWZpbml0aW9ucyAqLw0KQGZvbnQtZmFj
ZQ0KCXtmb250LWZhbWlseToiQ2FtYnJpYSBNYXRoIjsNCglwYW5vc2UtMToyIDQgNSAzIDUgNCA2
IDMgMiA0O30NCkBmb250LWZhY2UNCgl7Zm9udC1mYW1pbHk6Q2FsaWJyaTsNCglwYW5vc2UtMToy
IDE1IDUgMiAyIDIgNCAzIDIgNDt9DQpAZm9udC1mYWNlDQoJe2ZvbnQtZmFtaWx5Okdlb3JnaWE7
DQoJcGFub3NlLTE6MiA0IDUgMiA1IDQgNSAyIDMgMzt9DQovKiBTdHlsZSBEZWZpbml0aW9ucyAq
Lw0KcC5Nc29Ob3JtYWwsIGxpLk1zb05vcm1hbCwgZGl2Lk1zb05vcm1hbA0KCXttYXJnaW46MGlu
Ow0KCW1hcmdpbi1ib3R0b206LjAwMDFwdDsNCglmb250LXNpemU6MTEuMHB0Ow0KCWZvbnQtZmFt
aWx5OiJDYWxpYnJpIixzYW5zLXNlcmlmO30NCmE6bGluaywgc3Bhbi5Nc29IeXBlcmxpbmsNCgl7
bXNvLXN0eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOmJsdWU7DQoJdGV4dC1kZWNvcmF0aW9uOnVu
ZGVybGluZTt9DQphOnZpc2l0ZWQsIHNwYW4uTXNvSHlwZXJsaW5rRm9sbG93ZWQNCgl7bXNvLXN0
eWxlLXByaW9yaXR5Ojk5Ow0KCWNvbG9yOnB1cnBsZTsNCgl0ZXh0LWRlY29yYXRpb246dW5kZXJs
aW5lO30NCnAubXNvbm9ybWFsMCwgbGkubXNvbm9ybWFsMCwgZGl2Lm1zb25vcm1hbDANCgl7bXNv
LXN0eWxlLW5hbWU6bXNvbm9ybWFsOw0KCW1zby1tYXJnaW4tdG9wLWFsdDphdXRvOw0KCW1hcmdp
bi1yaWdodDowaW47DQoJbXNvLW1hcmdpbi1ib3R0b20tYWx0OmF1dG87DQoJbWFyZ2luLWxlZnQ6
MGluOw0KCWZvbnQtc2l6ZToxMS4wcHQ7DQoJZm9udC1mYW1pbHk6IkNhbGlicmkiLHNhbnMtc2Vy
aWY7fQ0Kc3Bhbi5FbWFpbFN0eWxlMTgNCgl7bXNvLXN0eWxlLXR5cGU6cGVyc29uYWwtcmVwbHk7
DQoJZm9udC1mYW1pbHk6Ikdlb3JnaWEiLHNlcmlmOw0KCWNvbG9yOndpbmRvd3RleHQ7fQ0KLk1z
b0NocERlZmF1bHQNCgl7bXNvLXN0eWxlLXR5cGU6ZXhwb3J0LW9ubHk7DQoJZm9udC1zaXplOjEw
LjBwdDt9DQpAcGFnZSBXb3JkU2VjdGlvbjENCgl7c2l6ZTo4LjVpbiAxMS4waW47DQoJbWFyZ2lu
OjEuMGluIDEuMGluIDEuMGluIDEuMGluO30NCmRpdi5Xb3JkU2VjdGlvbjENCgl7cGFnZTpXb3Jk
U2VjdGlvbjE7fQ0KLS0+PC9zdHlsZT4NCjwvaGVhZD4NCjxib2R5IGxhbmc9IkVOLVVTIiBsaW5r
PSJibHVlIiB2bGluaz0icHVycGxlIj4NCjxkaXYgY2xhc3M9IldvcmRTZWN0aW9uMSI+DQo8cCBj
bGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6JnF1b3Q7R2VvcmdpYSZx
dW90OyxzZXJpZiI+QmVjYXVzZSB0aGUgTU1JTyBhZGRyZXNzIGxpbmVzIGluIHRoZSBoYXJkd2Fy
ZSBkb27igJl0IGluY2x1ZGUgdGhlIGxvdyAyIGJpdHMuIFRoZSBDQ0ktUCBzcGVjLiByZXF1aXJl
cyB0aGF0IHRoZXkgYWx3YXlzIGJlIDAgc2luY2UgdGhlIG1pbmltdW0gTU1JTyBncmFudWxhcml0
eSBpcyA0IGJ5dGVzLiBUaGUgc29mdHdhcmUgYW5kIENQVSBkbw0KIGhhdmUgdGhvc2UgbG93IDIg
Yml0cywgc28gdGhlIENQVS1zaWRlIGNvbXB1dGF0aW9uIGRpZmZlcnMgYnkgYSBmYWN0b3Igb2Yg
NC48bzpwPjwvbzpwPjwvc3Bhbj48L3A+DQo8cCBjbGFzcz0iTXNvTm9ybWFsIj48c3BhbiBzdHls
ZT0iZm9udC1mYW1pbHk6JnF1b3Q7R2VvcmdpYSZxdW90OyxzZXJpZiI+PG86cD4mbmJzcDs8L286
cD48L3NwYW4+PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFt
aWx5OiZxdW90O0dlb3JnaWEmcXVvdDssc2VyaWYiPi1NaWNoYWVsPG86cD48L286cD48L3NwYW4+
PC9wPg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiZxdW90
O0dlb3JnaWEmcXVvdDssc2VyaWYiPjxvOnA+Jm5ic3A7PC9vOnA+PC9zcGFuPjwvcD4NCjxkaXYg
c3R5bGU9ImJvcmRlcjpub25lO2JvcmRlci10b3A6c29saWQgI0I1QzRERiAxLjBwdDtwYWRkaW5n
OjMuMHB0IDBpbiAwaW4gMGluIj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxiPjxzcGFuIHN0eWxl
PSJmb250LXNpemU6MTIuMHB0O2NvbG9yOmJsYWNrIj5Gcm9tOiA8L3NwYW4+PC9iPjxzcGFuIHN0
eWxlPSJmb250LXNpemU6MTIuMHB0O2NvbG9yOmJsYWNrIj5PUEFFICZsdDtvcGFlLWJvdW5jZXNA
bGlzdHMuMDEub3JnJmd0OyBvbiBiZWhhbGYgb2YgQWJlbCBFbmV5ZXcgJmx0O211bC5hYmVsNDNA
Z21haWwuY29tJmd0Ozxicj4NCjxiPkRhdGU6IDwvYj5UaHVyc2RheSwgTWF5IDMwLCAyMDE5IGF0
IDEyOjAzIFBNPGJyPg0KPGI+VG86IDwvYj4mcXVvdDtvcGFlQGxpc3RzLjAxLm9yZyZxdW90OyAm
bHQ7b3BhZUBsaXN0cy4wMS5vcmcmZ3Q7PGJyPg0KPGI+U3ViamVjdDogPC9iPltPUEFFXSBJbnRl
bCBGcGdhIEJCQiBUdXRvcmlhbDxvOnA+PC9vOnA+PC9zcGFuPjwvcD4NCjwvZGl2Pg0KPGRpdj4N
CjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5ic3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2
Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPkkgYW0gYXQgdGhlIHNlY29uZCBwYXJ0IG9m
IHRoZSB0dXRvcmlhbC4gQnV0IEkgYW0gaGF2aW5nIGRpZmZpY3VsdGllcyB1bmRlcnN0YW5kaW5n
IHRoZSBtbWlvIGFkZHJlc3NpbmcgcGFydC4gU3BlY2lmaWNhbGxseQ0KPGEgaHJlZj0iaHR0cHM6
Ly9naXRodWIuY29tL09QQUUvaW50ZWwtZnBnYS1iYmIvYmxvYi9tYXN0ZXIvc2FtcGxlcy90dXRv
cmlhbC8wMl9wbGF0Zm9ybV9pZmMvMDJiX2NjaXBfY2xvY2svc3cvY2xvY2tfZnJlcV90ZXN0LmMj
TDIyNiIgdGFyZ2V0PSJfYmxhbmsiPg0KaHR0cHM6Ly9naXRodWIuY29tL09QQUUvaW50ZWwtZnBn
YS1iYmIvYmxvYi9tYXN0ZXIvc2FtcGxlcy90dXRvcmlhbC8wMl9wbGF0Zm9ybV9pZmMvMDJiX2Nj
aXBfY2xvY2svc3cvY2xvY2tfZnJlcV90ZXN0LmMjTDIyNjwvYT4gd2h5IGRvIHdlIG11bHRpcGx5
IHRoZSBhZGRyZXNzIGJ5IDQgYnV0IGluIHRoZSBoYXJkd2FyZSBwYXJ0Jm5ic3A7DQo8YSBocmVm
PSJodHRwczovL2dpdGh1Yi5jb20vT1BBRS9pbnRlbC1mcGdhLWJiYi9ibG9iL21hc3Rlci9zYW1w
bGVzL3R1dG9yaWFsLzAyX3BsYXRmb3JtX2lmYy8wMmJfY2NpcF9jbG9jay9ody9ydGwvYWZ1LnN2
I0wxNTAiIHRhcmdldD0iX2JsYW5rIj4NCmh0dHBzOi8vZ2l0aHViLmNvbS9PUEFFL2ludGVsLWZw
Z2EtYmJiL2Jsb2IvbWFzdGVyL3NhbXBsZXMvdHV0b3JpYWwvMDJfcGxhdGZvcm1faWZjLzAyYl9j
Y2lwX2Nsb2NrL2h3L3J0bC9hZnUuc3YjTDE1MDwvYT4gaXQgaXNuJ3QgbXVsdGlwbGllZC4gV2h5
IGRvIHdlIG5lZWQgdG8gbXVsdGlwbHkgaXQgYnkgNCBpbiB0aGUgc29mdHdhcmUgcGFydD88bzpw
PjwvbzpwPjwvcD4NCjwvZGl2Pg0KPGRpdj4NCjxwIGNsYXNzPSJNc29Ob3JtYWwiPjxvOnA+Jm5i
c3A7PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9Ik1zb05vcm1hbCI+U29ycnkg
aWYgdGhpcyBpcyBub3QgYW4gaW50ZXJlc3RpbmcgcXVlc3Rpb24uIEJ1dCBJIGFtIG5ldyBhbmQg
aXQgaXMgY29uZnVzaW5nLjxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAgY2xhc3M9
Ik1zb05vcm1hbCI+PG86cD4mbmJzcDs8L286cD48L3A+DQo8L2Rpdj4NCjxkaXY+DQo8cCBjbGFz
cz0iTXNvTm9ybWFsIj5SZWdhcmRzIDxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8ZGl2Pg0KPHAg
Y2xhc3M9Ik1zb05vcm1hbCI+QWJlbDxvOnA+PC9vOnA+PC9wPg0KPC9kaXY+DQo8L2Rpdj4NCjwv
ZGl2Pg0KPC9ib2R5Pg0KPC9odG1sPg0K

--===============9172114913516358188==--