본문 바로가기
스마트폰/삼성 SAMSUNG

갤럭시S7 커널. (Galaxy S7 Kernel, Exynos8890 ver)

by gamma0burst 2016. 3. 25.
반응형

- 갤럭시S7 엑시노스 버전 커널 뒤져보다가 나온 것들입니다.

 

- 갤럭시S7, 엑시노스8890

갤럭시S7 코드네임입니다.

Hero, Hero2, Lucky

찌라시대로면 초기 코드네임이 Lucky 였다고 합니다. 결국 Hero가 됐지만.

SS335AP로도 나오는데 엑시노스3470이 SS222AP로 불리는 것처럼 같은 모뎀통합 제품.

 

 

- CPU

 

Cortex-A53 쿼드코어, Mongoose 쿼드코어입니다.

기존에 알려진대로 몽구스가 코드네임에 그치고 실제로는 엑시노스M1 이라 불린다면 여기서도 Exynos M1 정도로 표기됐어야 할텐데 몽구스로 표기됐습니다.

초기 단계 코드를 그대로 놔뒀을 가능성이 높겠지요.

파일을 보면 줄여서 MNGS로 표기하기도 합니다.

 

 

클럭 테이블.

테이블상 A53은 최대 2.0GHz, 몽구스는 3.0GHz 입니다.

A53이 cl0, 클러스터0이고, 몽구스가 cl1, 클러스터1 입니다.

맨 왼쪽의 0~18, 0~30까지의 숫자. idx. index로 보이는데 이게 바로 뒤에 나오니...

 

A53은 idx 4~15까지, 몽구스는 idx 7~22 입니다.

A53은 400MHz~1.6GHz, 몽구스는 700MHz~2.3GHz 구간에서 동작.

 

맨 아래를 보면 활성화 코어 수에 따른 cl1의 최대 idx가 나옵니다.

1,2코어만 활성화되면 idx 4 가 됩니다. 2.6GHz

싱글, 듀얼코어 로드시 최대 2.6GHz로 동작하고 그 이상에서는 최대 2.3GHz로 동작한다는거.

 

갤럭시S7 CPU-Z를 보면 코어6,7이 오프되는걸 볼 수 있는데 빅코어가 오프되는 것으로 보입니다.

(링크 : 엑시노스8890 긱벤치3 결과 분석. (갤럭시S7, Galaxy S7, Exynos8890))

 

전력상수는 몽구스 68, A53 10 입니다.

15P, 7P를 보고 Cortex-A15/A7 전력상수가 아닌가 할 수 있겠으나, A57/A53인 엑시노스7420이 각각 46/13 이었습니다.

(링크 : 갤럭시S6 커널 정보. (엑시노스7420, 엑시노스5433 64bit, 엑시노스7580))

똑같이 15P, 7P로 표기됐고요.

14LPP로 공정까지 바뀐 상황에서 A15 전력상수가 14LPE A57보다 높을 수는 없지요.

몽구스/A53의 수치로 보는게 타당합니다.

 

저 값과 클럭,전압 테이블로 전력을 계산하면

 

몽구스는 보면 2.3GHz에서 2W.

이상한건 2.2GHz부터 전압이 급격히 올라가는데 2.6GHz부터 오히려 전압이 떨어집니다.

저걸 그대로 믿는다면 싱글, 듀얼코어 로드로 제한되기때문에 모든 코어에 전압이 공급될 때에 비해 낮은 전압으로도 고클럭이 가능하다고 끼워맞춰 볼 수도 있겠으나, 사실 설득력이 좀 떨어집니다.

그렇게치면 2.4~2.5GHz도 전압이 낮아야겠지요.

2.2GHz 이후의 전압상승 경향으로 보아 2.6GHz에서는 1.375V 정도로 계산되는데 이를 적용하면 3.34W가 됩니다.

(표에는 1.375로 표기하고 계산했지만, 원래는 1.1375로 되어 있습니다.

이 기준이면 2.3W가 되는데 2.5GHz 전력보다 낮지요. 가능성이 낮을듯 합니다.)

실제 전력 계측 결과가 나오면 어느 쪽이 맞을지 알 수 있겠지요.

 

A53 전력은 사양인 1.6GHz에서 215mW 수준입니다.

엑시노스7420에서는 1.4GHz에서 비슷한 전력이었습니다.

확실히 공정이 바뀐게 효과가 보입니다.

동일 전력에서 1.4GHz -> 1.6GHz면 +14%인데, 14LPE -> 14LPP에서 성능 게인이 +15%라던 삼성 발표하고 들어맞지요.

 

TDP 3.5W

리틀코어 최대 전력 1W

빅코어 최대전력 6.552W

GPU 최대전력 3.11W

 

위에서 계산한 리틀코어 1코어 전력이 215mW. 쿼드코어로 계산해도 860mW

최대 전력 값에 들어맞는 수준.

빅코어는 2.3GHz 쿼드코어 기준으로 계산하면 8W

6.552W를 넘습니다.

(보통 CPU 최대 전력은 6W 정도로 설정합니다.)

계산상으로 2.1~2.2GHz 쿼드코어의 전력입니다.

어차피 TDP에 한계가 있기때문에 어느 쪽이든 장시간 클럭을 유지하는건 힘들겁니다.

모든 코어가 100% 로드로 돌아가지 않는다면 의외로 길게 유지될 수도 있겠고, 그걸 근거로 2.3GHz로 클럭을 설정했을 수도 있습니다.

 

싱글/듀얼코어 로드 클럭이 2.6GHz로 정해진건 최대전력과 연관이 있을듯 합니다.

예측 전압으로 계산한 2.6GHz 전력이 3.34W인데 듀얼코어라고 해도 6.68W 입니다.

최대전력 6.6W와 비슷한 수치입니다.

그 이상으로 클럭이 올라간다면 전압이 더 올라가서 전력이 더 급격히 올라가서 듀얼코어 로드시 전력이 관리 수준을 넘어서겠지요.

 

GPU 전력은 뒤에서 다시 얘기하겠습니다.

 

 

부스트 설정관련 코드가 여기저기서 보입니다.

동작 설정이겠지요.

 

 

- GPU

클럭은 806 754 728 702 650 600 546 419 338 260 으로 나오지만 실제 최대클럭은 알려진대로 650MHz 입니다.

아래에 나오듯이 GPU 최대 클럭 650MHz라는 코드때문이기도 하지만,

cpu_egl_max 부분 값때문이기도 합니다. (빅코어 클럭)

338MHz 이후로 실제 최대 클럭이 아닌 임의 클럭이 설정되어 있습니다.

 

이상한 점은 GPU 클럭이 올라가는데 동시에 빅코어 클럭도 올라간다는겁니다.

이것만 보면 'GPU 클럭이 올라갈수록 TDP 측면에서 CPU 전력의 여유가 더 늘어난다.'라고 해석할 수 밖에 없습니다.

앱 특성으로 GPU 클럭은 같아도 전력에 차이가 있을수도 있겠으나, 그렇다면 그 전력차는 GPU 클럭을 추가로 올리는데 돌리겠지요.

동시 CPU 클럭까지 올릴 여유가 있을지 의문.

어쩌면 로드되는 코어 수가 줄어드는걸지도.

 

 

 

최대 클럭 650MHz

전력상수 625

Sustanable 클럭 419MHz

 

전력상수와 클럭,전압 테이블로 전력을 계산하면 이렇습니다.

650MHz에서 2.6W

엑시노스7420이 최대 2.88W 였습니다.

(링크 : 갤럭시S6 커널 정보. (엑시노스7420, 엑시노스5433 64bit, 엑시노스7580))

702MHz로 설정되지 못 한건 앞서 나왔던 GPU 최대전력 3.11W를 넘어서기때문인듯.

 

앞서 GPU 클럭 테이블과 전력을 계산치를 대입해보면,

(GPU - 빅코어 1코어)

650MHz - 1.56GHz -> 2.6W + 0.8W = 3.4W

600MHz - 1.46GHz -> 2.4W + 0.7W = 3.1W

546MHz - 1.25GHz -> 2.18W + 0.6W = 2.78W

419MHz - 1.15GHz -> 1.68W + 0.55W = 2.23W

338MHz - MAX(2.3GHz?) -> 1.35W + 1.99W = 3.34W

 

앞에서 말한 TDP 3.5W 기준으로 맞춰보면,

(GPU - 빅코어 1코어)

650MHz - 1.56GHz -> 2.6W + 0.8W = 3.4W -> CPU 1코어

600MHz - 1.46GHz -> 2.4W + 0.7W = 3.1W -> CPU 1코어

546MHz - 1.25GHz -> 2.18W + 0.6W = 2.78W -> CPU 2코어

419MHz - 1.15GHz -> 1.68W + 0.55W = 2.23W -> CPU 3코어

338MHz - MAX(2.3GHz?) -> 1.35W + 1.99W = 3.34W -> CPU 전력 2.15W. 코어, 클럭 상황딸 CPU 코어 수가 바뀔듯.

 

이런 식으로 활성화 CPU 코어 수가 나온다면 GFX벤치같은 벤치마크나 게이밍 등 상황에서 CPU 로드 구조를 분석한 결과일지도?

 

쿨링쪽을 보면 역시나 클럭별로 인덱스 넘버가 붙어있습니다.

 

GPU에도 부스터 관련 클럭.

 

 

- Argos ?

Argos라는 항목이 보이는데 내용만 보면 상황별 동작 클럭 설정을 위한 항목(?)으로 보입니다.

실제 용도가 어떤지는 알 수 없지만...

 

그리스 로마 신화에 나오는 그 아르고스라면 감시나 경계에 적합하다는 특징이 반영된 이름일거고, 시스템 상태를 모니터링한다는 개념에서 명명된걸지도.

 

 

- UFS

갤럭시S6를 비롯해서 노트4, J3/7, A7 등을 보면 코드네임 Shark라는 UFS 컨트롤러에 대한 내용이 보이는데,

(링크 : 갤럭시S6 커널 정보. (엑시노스7420, 엑시노스5433 64bit, 엑시노스7580))

갤럭시S7에서는 안 보입니다.

아무래도 다른 컨트롤러를 쓴 것으로 보이는데 Shark가 HS-G2 2Lane rate B 지원이니 그 이후 제품이라면 최소 HS-G3 1Lane은 지원할듯 합니다.

 

 

- 엑시노스 라인업

 

 

다른 엑시노스 제품명도 나오는데 출시된걸 제외하면

엑시노스 7410/7890/7870/7880이 나옵니다.

 

엑시노스 7870은 이전에 벤치마크가 나오면서 대략적인 사양이 나왔습니다.

(링크 :엑시노스7870 GPU 사양 추정. (갤럭시 J7 2016))

사양으로 보아 라인업상 엑시노스 7870은 미들레이지 정도에 위치하는데, 엑시노스7880은 이름으로 보아 하이엔드급으로 생각됩니다.

 

문제는 엑시노스7410/7890

엑시노스7410이 엑시노스5433의 다른 이름이라는 얘기는 맨 위의 코드로 완전히 부정됩니다.

각각 따로 표기되어 있습니다.

 

엑시노스 7890은 예전에 한 번 언급된적이 있습니다.

(링크 : 삼성 엑시노스 7890 개발 중? (Exynos 7890))

제품명으로 보면 7880의 후속같지만 언급된 시기로 보면 엑시노스7420의 후속작으로 보는게 타당합니다.

엑시노스8890 발표 전에 얘기가 나왔으니까요.

그런데 결과적으로 엑시노스7420의 후속작은 없었고, 노트5에서 7420이 한 번 더 쓰이고, 엑시노스8890이 나옵니다.

엑시노스7420의 후속작으로 나올 예정이었으나 상황이 여의치 않았든, 필요가 없었든 해서 프로젝트가 drop되고 바로 엑시노스8890으로 건너뛰었다고 정황을 추측해볼 수 있습니다.

 

 

 

 

엑시노스7890의 GPU 파일을 보면 엑시노스8890과 같은 t8xx 폴더에 있습니다.

T800 계열 GPU가 사용되었다는 것.

클럭은 엑시노스7420과 같습니다.

전력상수를 보면 443 입니다.

T880MP12인 엑시노스8890이 625 입니다.

MP수에 비례한다고 보면 MP8.5 입니다. MP8로 볼 수 있습니다.

 

엑시노스7420 - 엑시노스7890 - 엑시노스8890 의 개발 연속성을 고려한다면 엑시노스7890 GPU 사양은 T880MP8로 볼 수 있습니다.

T760 - T860 - T880 을 6개월 순으로 개발해서 투입한다는건 상당한 손실일겁니다.

엑시노스5430 -> 엑시노스5433 에서 GPU가 바뀌고,

엑시노스5433 -> 엑시노스7420 에서 GPU가 MP수만 늘어나고 아키텍처가 유지되는데, 만약 엑시노스7890이 있었고 GPU 사양이 T880MP8 이었다면 엑시노스7890 -> 엑시노스8890도 같은 흐름입니다.

 

뭐 이래저래 정황상 Mali-T880MP8 사양이었을거라는 얘기.

 

코어 수가 나옵니다.

엑시노스3250 듀얼코어, 엑시노스3475 쿼드코어를 제외하면 모두 옥타코어.

 

 

- 엑시노스 코드네임

 

이전에 엑시노스8890의 코드네임은 융프라우(Jungfrau)라는 내용이 나왔습니다.

(링크 : 차기 엑시노스(Jungfrau) GPU 사양, 성능 추정)

커널의 JF라는건 그 약자일겁니다.

 

그 동안 나온 코드네임을 정리해보면,

엑시노스4210 : Orion

엑시노스4412 : Pegasus

엑시노스4415 : Hudson (갤럭시 메가2 커널)

엑시노스5260 : Rhea

엑시노스5250 : Gaia

엑시노스5410 : Adonis

엑시노스5420 : Adonis Prime

엑시노스5422 : Ares

엑시노스5430 : Helsinki

엑시노스5433 : Helsinki Prime

엑시노스7420 : Istor

엑시노스3470 : Carmen

엑시노스7580 : Insel-D

엑시노스3475 : Island

엑시노스8890 : Jungfrau

 

초기 코드네임은 누가봐도 그리스 로마 신화에서 따온 것인데 그걸 빼면 남는건 다음과 같습니다.

엑시노스4415 : Hudson (갤럭시 메가2 커널)

엑시노스5430 : Helsinki

엑시노스5433 : Helsinki Prime

엑시노스7420 : Istor

엑시노스3470 : Carmen

엑시노스7580 : Insel-D (Carmen2)

엑시노스3475 : Island

엑시노스8890 : Jungfrau

 

시기나 이름 패턴으로 적당히 묶어서 보면,

Carmen

Hudson, Helsinki(prime)

Istor, Insel-D, Island

Jungfrau

 

카르멘은 검색하면 소설, 오페라만 나와서 논외인거 같고,

그 이후로 보면 H, I 로 시작합니다.

예전 갤럭시처럼 알파벳 순으로 코드네임이 전개되는듯 합니다.

 

hudson은 강이름이고, helsinki는 도시.

istor(-o-ral)은 산이름, insel은 단순히 독일어로 호수라고 볼 수도 있겠고 산 이름도 있습니다.

island는 말 그대로 섬이고.

Jungfrau는 산 이름이지요.

강, 산, 호수, 섬이 나오는데 플래그쉽~로우엔드 코드네임 컨셉으로 정해지지 않을까 싶습니다.

H,I 만 놓고 보면 일단 플래그쉽 - 산 은 거의 확실해보이고, Island로 보아 로우엔드 - 섬.

하이엔드, 미들레인지가 호수, 강으로 코드네임이 정해질듯 합니다.

어떻게 매치될지는 나와봐야 알겠고요.

코드네임이 J로 시작하는 하이엔드, 미들레인지는 엑시노스7880/7870이 해당될거 같습니다.

 

다음 라인업 코드네임은 K로 시작하겠네요.

 

 

 

반응형

댓글