Here is an example of MATLAB cross correlation of orange part with the whole pack of four chirps

One down chirp, one upchirp, down and then up again:

clear all
close all

N=512;
T=1;
Nyquist_ratio = 8;
f_sampling=N*T*Nyquist_ratio;
Number_of_users_in_a_set=8;
step=N/Number_of_users_in_a_set;
t=linspace(0,T,f_sampling);
count2=0
for count = 0:step:N-1
count2=count2+1;
beta=(N-2*count)./(2*N*T*T);%(N/2)-count/1
if count<=round(N/2)
PHI=beta.*(t.^4-((4/3).*(t.^3).*T)-(0.5.*(t.^2).*T.*T));
chirp_set(count2,:) = exp(i*pi*N*(((t+count*T/N).^2)+PHI)/(T*T));
TF_plot(count2,:) = N.*(t)./(T.*T) + count./T +N.*beta.*(t.*((2*t-T).^2-2*T*T))/(T*T);
%rxSig =zeros(1,length(t));
end
if count>round(N/2)
PHI=beta.*(-(t.^4)+((8/3).*(t.^3).*T)-(1.5.*(t.^2).*T.*T)-(t.*T.*T.*T));
chirp_set(count2,:) = exp(i*pi*N*(((t+count*T/N).^2)+PHI)/(T*T));
TF_plot(count2,:) = N.*(t)./(T.*T) + count./T +N*beta.*((-t+T).*((2*t-T).^2-2*T*T))/(T*T);
%rxSig =zeros(1,length(t));
end
end
r=chirp_set(1,:);
CP = fliplr(chirp_set(1,1:1:512));
[a,b]=xcorr([CP,r,CP,r],CP)
plot(b,abs(a))